Vuejs 2.0 dynamic component
Adding and removing dynamic components
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.0.3/vue.js"></script>
<div id="app">
<child v-model="cars"></child>
<div>
<ul>
<li v-for="car in cars">
{{ car.model }}
</li>
</ul>
</div>
</div>
JavaScript
Vue.component('child', {
template: `
<div>
<button type="button" @click="addCar()">Add Car</button>
</div>
`,
methods: {
addCar() {
this.$emit('input', { model: "some car model"})
}
}
});
var vm = new Vue({
el: '#app',
data: function() {
return {
cars: []
}
},
})