3 回答

TA貢獻(xiàn)1873條經(jīng)驗(yàn) 獲得超9個(gè)贊
使用Vue 2.0,我正在使用文檔中演示的eventHub機(jī)制。
定義集中式事件中心。
const eventHub = new Vue() // Single event hub
// Distribute to components using global mixin
Vue.mixin({
data: function () {
return {
eventHub: eventHub
}
}
})
現(xiàn)在在您的組件中,您可以發(fā)布事件
this.eventHub.$emit('update', data)
并且傾聽你的意思
this.eventHub.$on('update', data => {
// do your thing
})

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超8個(gè)贊
您甚至可以縮短它并將根 Vue實(shí)例用作全局事件中心:
第1部分:
this.$root.$emit('eventing', data);
第2部分:
mounted() {
this.$root.$on('eventing', data => {
console.log(data);
});
}
添加回答
舉報(bào)