Laravel-Vue JS Sibling组件通信

时间:2019-05-01 12:55:00

标签: laravel vue.js

我无法使用Vue的EventBus技术交流黑白组件

Vue.prototype.$eventBus = new Vue(); // Global event bus

const app = new Vue({
    el: '#dashboard',
    data() {
        return {
            dailyData: []
        }
    },
    components: {
        'latest-feedbacks': LatestFeedbacks,
        'feedbacks-overview': FeedbacksOverview,
    }
});

在LatestFeedbacks.vue

...
created() {
     this.$eventBus.$emit('feedbacksChanged');
},
...

在FeedbacksOverview.vue

...
created() {
     this.$eventBus.$on('feedbacksChanged', ()=>{
        // code
     });
},
...

1 个答案:

答案 0 :(得分:-1)

您可以使用$root实例到达垂直链之外的组件。

赞:

created() {
     this.$root.$emit('feedbacksChanged');
}

created() {
     this.$root.$on('feedbacksChanged', ()=>{
        // code
     });
}