在某些小型项目中,要在多组件之间通信,如果不用vuex的话,还可以使用eventbus的方式达到目的。
首先新建一个js文件,例如bus.js
import Vue from 'vue'
export default new Vue()
这样在每一个需要进行通信的组件中引入该文件
import Bus from 'path/bus.js'
bus.$emit('someEvent', args)
然后使用bus.$on('someEvent')
就可以监听到事件。
这样,利用vue本身的特性,来完成组件间通信的一种方式,是比较简单的一种方式,相比于vuex,不需要引入新的文件来增加打包后文件的体积,但是vuex更好更强大也是毋庸置疑的,根据项目的不同抉择更好的方式吧。
如果觉得我的文章对您有用,请您随意打赏。您的支持将鼓励我更加努力创作!
如无特殊声明,文章均为原创,若有不正之处,万望告知。转载请附上原文地址,十分感谢!