文章目录
eventBus
对于非父子组件的传值,如果不是项目很大很复杂,可以使用eventBus方法来实现传值。这种方法通过一个空的Vue实例作为中央事件中心,用他来触发事件和监听事件。具体步骤如下:
- 新建一个Vue实例。比如新建一个Bus文件夹。下面是index.js。在需要进行传值的页面读引入这个Bus文件夹。
import Vue from 'vue'
export default new Vue
- 在需要传值的页面(组件)内通过$emit来触发一个自定义事件。
Bus.$emit("getCourse", this.coursename)
- 然后在需要接收值的页面内通过$on来监听刚才已触发的自定义事件。
Bus.$on("getCourse", (msg) => {
this.nameList.push(msg);
console.log(this.coursename);
});