12.平行组件通信

<div id="parallel">
    <first></first>
    <second></second>
</div>
var Event = new Vue();//事件调度器,将第一个组件里的first_say与第二个组件里的first_say绑定

Vue.component('first',{
    template:`
    <div>第一个人说:<input v-on:keyup="changed" v-model="first_say" ></div>
    `,
    methods:{
        changed:function(){
            //触发事件,第一个参数是事件名字,第二个是事件内容
            Event.$emit('first_words',this.first_say);
        }
    },
    data:function (){
        return{
            first_say: '',
        }
    }
});
Vue.component('second',{
    template:`
    <div>第二个人:第一个人说,{{first_say}}</div>
    `,
    data:function(){
        return {
            first_say:'',
        }
    },
    //mounted,初始化完成
    mounted:function () {
        //把this改成其他的,目的是要this指的是本组件,而不是Event
        var me=this;
        //$on,监听
        Event.$on('first_words',function (data) {
            console.log(data);
            me.first_say=data;
        })
    }
});
new Vue({
    el:'#parallel',
})

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值