Vue 多个组件使用同样的数据时,如何保持数据同步?
举例:
游戏中存在资源列表、建造、军队列表等等组件,它们都需要resource
变量。建造将减少
resource
值的数量,这个变化如何传导到其他组件中呢?
目前的解决方式是:定义一个 localStorage resource
,最高级组件获取到,传递到低级组件去,然后低级组件通过 created
来重构 data
(此时加入父级的 resource
属性)
组件很多,虽然尽力保持最多三级继承
的最初原则,但一个页面有十多个组件都需要 resource
,增加一个新的变量,就需要增加十几段一样的代码,耦合程度快把我吓死了。
已经用到的库:
- Vue2 最新版
- Vue-Router 最新版
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这个明显是全局对同一个状态修改和监听问题,vuex显然就是为这种场景而生的。
vuex
https://vuex.vuejs.org/zh/