javascript - vuex如何更优雅地用于派发事件?
黄舟
黄舟 2017-05-19 10:39:29
0
3
721

之前一直用new Vue()来定义一个全局通讯的Bus,这样组件之间通讯,只需要一边emit,另一边on监听就可以了。后来改用vuex,感觉上vuex理解上只是一个全局data,当需要派发事件的时候:例如A组件的一个事件,去触发B组件的一个方法(比如说,点击某按钮,取消一个定时器等),这个时候vuex就显得很鸡肋了,我现在用的方法是,定义一个布尔值,每次触发时,取false,然后在组件内watch这个值,调用方法。

如图:

然后监听:

请问大家有好一点的方法吗?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(3)
曾经蜡笔没有小新

这个用vuex不是挺好的吗?怎么会显得鸡肋?类似这种,用loginSuccess来控制是否显示用户头像,这样,我觉得用的还是挺愉快的

習慣沉默

一、仅仅是想通知某个对象去更改状态,建议使用事件的方式
1.父子组件之间的事件通讯,通过在父组件监听对应的事件名,子组件触发的方式。
2.非父子组件采用Event Bus的方式

二、数据在组件之间的共享
1.中大型应用使用vuex
2.应用场景比较少的情况,父子组件采用props,非父子组件Event Bus传递数据

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!