Vuex store 与组件 props:何时使用每种方法进行组件通信?

Rob*_*ier 5 flux vuex

我大约两周前学习了 Vuex。我认为我对 Vuex(或 Flux)是什么以及它是如何工作的有相当深入的了解。

我仍然不知道什么时候应该把财产放入商店,什么时候不应该。您知道何时执行此操作的一些准则吗?

一个明显的情况是,当需要相同信息的组件在组件层次结构中彼此相距较远时。但如果他们很亲密(兄弟姐妹或亲子关系)怎么办?在这种情况下,你是否总是使用组件 props 来传达值?如果没有,那么什么时候没有,为什么?

极端一点,在很多情况下,我可以想象存储在存储中的大部分值和几乎没有任何道具的组件。这种情况对我来说会感觉很奇怪,但我想知道这种方法是否有什么问题。

Dan*_*iel 3

他们说,Vuex 就像眼镜,你知道什么时候需要它们

但这充其量只是自以为是。因此,这个问题可能会因为主要基于意见而被关闭......

我想说使用 Vuex 有三个好处:

  • 无论组件距离多远,都可以轻松访问数据
  • 该商店是全局状态的单一来源
  • 擅长处理异步数据变化

如果你能满足两个标准,那么肯定是的。但仅仅因为您拥有父代和直系后代之间的数据,并不意味着您不应该使用 vuex。我经常对同一组件中的项目使用 vuex,但如果数据可用于其他组件,或者特别是如果它是异步的(使用 API),那么它仍然可以进入 vuex。