记录一下最近实现一个功能遇到的问题
结构如下
首先我使用的vuex在不通组件之间就可以通信,但是我的需求,
不同组件都可以改变vuex的值,导致我每个页面都在watch vuex映射的计算属性值,
困扰我很久,发现还有vue还有bus通信的方式
我解决方法思路如下
vuex和bus混用,在通过ref的方式,直接调用组件中的方法进行改变
总结一下组件传参我常用的几种方式
1. prop最简单不容易出错的方式
2. ref,也很喜欢用的一种方式,很简单
3. vuex,一般保存不变的值,在不同页面之间使用
4. $emit和$on的方式,父子通信,也是很简单的方式
5. sync修饰符,实现类似于双向绑定的语法糖,绑定 简单的boolean类型的值很好用,本质和第4点相同
5. 总线bus通信,引入公共的vue对象实现,兄弟组件之间通信很方便,也是用emit和on,
此处有注意的点是,有on的地方一定要用off,否则会一处调用,多处触发
-------------暂时就这些,以后再用到其他的,在记录新的--------------------
网友评论