子级向父级传递
在子组件中,通过$emit()来触发事件。
在父组件中,通过v-on来监听子组件事件。
<!-- 父组件模板 -->
<div id="opp">
<cpn v-on:itemclick='cpnclick'></cpn>
</div>
<!-- 子组件模板 -->
<template id="cpns">
<div>
<button v-for='item in category' v-on:click='btnclick(item)'>
{{item.name}}
</button>
</div>
</template>
<script src="./js/vue.js"></script>
<script>
const cpn = {
template:'#cpns',
data(){
return{
category:[
{id:'aaa',name:'热门推荐'},
{id:'bbb',name:'手机数码'},
{id:'ccc',name:'家具家电'},
{id:'ddd',name:'电脑办公'},
]
}
},
methods:{
btnclick(item){
this.$emit('itemclick',item);
},
},
}
const opp = new Vue({
el:'#opp',
data:{
message:'你好啊',
},
components:{
cpn
},
methods:{
cpnclick(item){
console.log('cpnclick',item)
}
},
})