STE*_*TEN 3 javascript vue.js vuex vuejs2
在 vue 的官方文档中,我$root在边缘案例部分找到了 about 的用法。“边缘案例”让我觉得使用this.$root(或this.$parent)来改变子组件中根实例的数据不是正常或推荐的方式。
我知道 vuex 是大型复杂 vue 应用程序的最佳状态管理选项,它具有更高级的功能和更好的调试。但这并不能说服我这this.$root是不好的。
正如文档所说,何时this.$root改变根数据是不可能跟踪数据更改发生的时间和地点的,也不利于调试。但我想知道的是:
this.$root方法是否只有调试的缺点?除了调试相关的问题,还有没有其他使用this.$root来变异根数据的问题?如果是这样,谁能给我一个小例子来展示这个问题,因为我想不出任何情况来避免使用它(假设我的 vue 应用程序不是那么大和复杂)。提前致谢!
这完全是关于好的和坏的架构。您应该始终设计您的代码,以便尽可能少地共享数据(这甚至与 Vue 无关)。
您的 vue 组件具有私有和公共方法和字段。考虑组件中的所有方法都是私有的。并且 $emit 和 props 是公开的。访问私有方法和字段总是一个坏主意,为什么?:
data在 root 内部进行更改。setInterval(() => $root.setDataTime(Current time ${Date.now()} 的事情), 1000)。您检查更改,并且 vuex 和您的组件上都没有提交。| 归档时间: |
|
| 查看次数: |
5858 次 |
| 最近记录: |