1. 定义一个公共的bus.js
//bus.js
import Vue from 'vue'
export default new Vue()
2. 在子组件A里用$emit发射数据
<script>
// 引入公共的bug,来做为中间传达的工具
import Bus from './bus.js'
export default {
methods: {
details(data) {
//发射组件A的数据
pub.$emit('tbPlotInfo', {tbPlot: data, isAdd: true})
}
}
}
</script>
3. 在子组件B里用$on接收数据
<script>
import Bus from './bus.js'
export default {
mounted: function () {
// 注意名字要一样 tbPlotInfo ,data 就是上面传的整个对象
pub.$on('tbPlotInfo', (data) => {
console.log("tbPlot", data.tbPlot)
console.log("isAdd", data.isAdd)
})
}
}
</script>
兄弟组件传值:https://www.kancloud.cn/yr_zkino/vue_vue/851460