console
let Event=new Vue();
Vue.component('person1',{
template: '<div>我说:<input @keyup="on_change" type="text" v-model="i_said" /></div>',
methods:{
on_change:function(){
Event.$emit('she_said_something',this.i_said);
}
},
data: function(){
return {
i_said: ''
}
}
})
Vue.component('person2', {
template: '<div>她说:{{she_said}}</div>',
data:function(){
return {
she_said: ''
}
},
mounted:function(){
let me=this;
Event.$on('she_said_something',function(data){
console.log(data);
me.she_said=data;
})
}
})
new Vue({
el: '#app'
});
<div id="app">
<person1></person1>
<person2></person2>
</div>