Я пытаюсь создать глобальную шину событий так, чтобы два компонента sibling могли взаимодействовать друг с другом. Я искал вокруг; однако я не могу найти примеров того, как его реализовать. Это то, что у меня есть до сих пор:
var bus = new Vue();
Vue.component('Increment', {
template: "#inc",
data: function() {
return ({count: 0})
},
methods: {
increment: function(){
var increment = this.count++
bus.$emit('inc', increment)
}
}
})
Vue.component('Display', {
template: "#display",
data: function(){
return({count: 0})
},
created: function(){
bus.$on('inc', function(num){
alert(num)
this.count = num;
});
}
})
vm = new Vue({
el: "#example",
})
Я создал свои шаблоны так: http://codepen.io/p-adams/pen/PzpZBg
Я хотел бы, чтобы компонент Increment
передавал счету компоненту Display
. Я не уверен, что я делаю неправильно в bus.$on()
.