首页 > 解决方案 > 应该使用 Vuex 存储哪一部分数据?

问题描述

Hello I deciced to use Vuex for state management in my application. I experiened with state management in Flutter before and most of the data is stored using state management in Flutter and not in the Widgets. When I use Vuex should most of my data be stored in the store divided into modules? or should I use Vuex to store only global data and keep most of my data in the components? I can't find a detailed answer about that, but I saw that if you need more than one emit in the tree of components then you should consider putting the data in the store. Thank you very much for the help and I really appriciate every answer!

标签: vue.jsvuejs2vuexvuex-modules

解决方案


根据我的经验,这实际上取决于您的应用程序。但是一个好的经验法则是保持全局数据的存储,并且多个组件需要使用它或将使用它,考虑未来在这种情况下,如果应用程序将在未来扩展将需要什么数据全球范围内。这些数据可以进入 Vuex Store。

此外,我发现使用 Store 进行异步调用和处理这些数据可以让我的组件代码更加简洁。

对于您的具体问题,是的,您的大部分数据都应该存储在那里。可以把它想象成你的组件只负责他们所做的事情,他们不必知道数据是如何到达他们的以及数据是如何处理的,他们只知道他们需要一些数据并且他们得到了它。这通常会使代码更易于理解。

我发现这些文章是否应该在 Vuex 中存储这些数据何时为什么以及如何使用 Vuex总结了我在这个主题上的大部分发现和经验,欢迎您在这里阅读更多内容。

作为旁注,使用类也有很大帮助,如果它对您来说是一种学习项目,请尝试尝试不同风格的项目结构。例如,您可以拥有一个[some_name]_helper.js[data_type]_processing.js文件,其中包含处理数据的逻辑,或处理您在应用程序中广泛使用的数据,如日期,使您的代码尽可能模块化有很大帮助,最终这就是 Vuex 试图让事情变得更容易的地方为你。

(尝试学习 Vuex 模式(getter、mutations、actions)并尽可能地理解它,这是您决定具体项目中哪些数据的最佳方式)


推荐阅读