Vue.js 将数据从子组件传递到子组件Vuejs 2
我误解了将子组件传递给其他子组件的文档 我有两个部分 index.htmlVue.js 将数据从子组件传递到子组件Vuejs 2,vue.js,components,Vue.js,Components,我误解了将子组件传递给其他子组件的文档 我有两个部分 index.html <main-categories-products source="{{ url('api/products') }}"> </main-categories-products> <sidebar-options> </sidebar-options> MainCategoriesProducts.vue import Vue from 'vue' var bus =
<main-categories-products source="{{ url('api/products') }}">
</main-categories-products>
<sidebar-options> </sidebar-options>
MainCategoriesProducts.vue
import Vue from 'vue'
var bus = new Vue()
export default{
props: ['source'],
created(){
this.fetchedProduct()
},
methods: {
fetchedProduct: function(){
var data = [1,2, 3];
bus.$emit('did-something', data);
}
}
}
我的SidebarOptions.vue
import Vue from 'vue'
var bus = new Vue()
export default{
data(){
return {
someData: {}
}
},
created(){
bus.$on('did-something', data => this.someData = data);
console.log(this.someData)
}
}
没有错误,但我无法从MainCategoriesProducts到SidebarOptions获取数据。如何获取这些数据=[1,2,3]?TY您正在创建两个不同的总线,您应该只创建一个 在app.js中添加以下内容
window.bus = new Vue();
移除
var bus = new Vue()
来自您的每个组件。@Rbex很乐意帮助:)
var bus = new Vue()