Vue组件的data必须是一个函数、单个根元素、局部组件
1.Vue组件的data必须是一个函数
一个组件的 data 选项必须是一个函数,因此每个实例可以维护一份被返回对象的独立的拷贝
<div id="app">
<my-button></my-button>
</div>
<script>
Vue.component('my-button', {
template: '<button @click="count++">{{ msg }} {{ count }}</button>'
,data: function () {
return {
count: 0,
msg: '点我啊'
}
}
})
let vm = new Vue({
el: '#app'
,data: {
msg: 'liang'
}
})
</script>
2. 每个组件必须只有一个根元素
错误示例
正确示例
<div id="app">
<my-button></my-button>
</div>
<script>
Vue.component('my-button', {
template: `
<ul>
<li>1</li>
<li>2</li>
</ul>
`
})
let vm = new Vue({
el: '#app'
,data: {
msg: 'liang'
}
})
</script>
3. 注册局部组件
components 属性
- my-span 组件名
- mySpan 组件模板存放变量
<div id="app">
<my-span></my-span>
</div>
<script>
var mySpan = {
template: '<p>12345</p>'
,data: function(){
return {
}
}
}
let vm = new Vue({
el: '#app'
,data: {
msg: 'liang'
}
,components: {
'my-span': mySpan
}
})
</script>
本站发布的内容若侵犯到您的权益,请邮件联系站长删除,我们将及时处理!
从您进入本站开始,已表示您已同意接受本站【免责声明】中的一切条款!
本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行研究。
本站资源仅供学习和交流使用,版权归原作者所有,请勿商业运营、违法使用和传播!请在下载后24小时之内自觉删除。
若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,使用者自行承担,概与本站无关。