Vue.js Vue js在两个组件之间发送数据无需道具

Vue.js Vue js在两个组件之间发送数据无需道具,vue.js,vuejs2,vue-component,vuex,vue-router,Vue.js,Vuejs2,Vue Component,Vuex,Vue Router,您好,我正在试图找到一种方法,将一些布尔值从组件a发送到组件B,而无需相互嵌套,无需道具,只需发送数据,单向绑定 export default { data: function { return { value1: false, value2:true } } } 使用Vuex引入全球状态可能是实现这一点的最佳方式 无需在系统中引入新的内容,您就可以通过事件总线处理此问题。引入这样的旁道功能确实会增加应用程序的复杂性,但

您好,我正在试图找到一种方法,将一些布尔值从组件a发送到组件B,而无需相互嵌套,无需道具,只需发送数据,单向绑定

    export default {
       data: function {
       return {
       value1: false,
       value2:true
    }
 }
}

使用Vuex引入全球状态可能是实现这一点的最佳方式

无需在系统中引入新的内容,您就可以通过事件总线处理此问题。引入这样的旁道功能确实会增加应用程序的复杂性,但有时是必要的

然后在你的组件中你像这样使用它们

// eventBus.js
import Vue from 'vue';
export const EventBus = new Vue();

// To setup your component to listen and update based on new value
import { EventBus } from './eventBus';
mounted() {
  EventBus.$on('newValue', (val) => this.something = val);
}

// To send out a new value 
EventBus.$emit('newValue', 5);

这些组件之间有什么关系吗?如果它们完全不相关(不要共享同一个父级或嵌套),那么可能很难做到!您熟悉VueX吗?您在项目中使用VueX吗?