定义一个组件
<div id="app">
<ol>
<!-- 创建一个 todo-item 组件的实例 -->
<todo-item></todo-item>
<todo-item></todo-item>
</ol>
</div>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
// 定义名为 todo-item 的全局组件
Vue.component('todo-item', {
template: '<li>这是个待办项</li>'
})
// 定义名为 todo-item 的局部组件
/* var todo-item = {
template: '<li>这是个待办项</li>'
} */
new Vue({
el:'#app',
/*把组件注册到父作用域
components: {
TodoItem: todo-item
}, */
})
</script>
从父作用域传值到组件
<div id="app-7">
<ol>
<todo-item v-for="item in groceryList" v-bind:todo="item" v-bind:key="item.id"></todo-item>
</ol>
</div>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
// 定义名为 todo-item 的新组件
Vue.component('todo-item', {
props: ['todo'],
template: '<li>{{ todo.text }}</li>'
})
var app7 = new Vue({
el: '#app-7',
data: {
groceryList: [{
id: 0,
text: '蔬菜'
},
{
id: 1,
text: '奶酪'
},
{
id: 2,
text: '随便其它什么人吃的东西'
}
]
}
})
</script>