Vuex存储我的所有产品信息和API请求查询

时间:2017-09-19 22:09:47

标签: javascript rest vue.js vuejs2 vuex

这有点像Vue / Vuex效率/确认最佳实践问题。

我有一个API返回50个产品的分页数据集,其中我保存在Vuex商店中。

对于我的“显示所有产品”视图,我正在迭代Vuex商店。

对于我个人的产品路线,我有两个想法是否直接从Vuex商店加载产品(意味着没有必要再次请求产品,因此更快。)或者只是从我的产品请求该产品API。

我认为权衡是对API的初始请求需要响应的数据多于用户最初在“显示所有产品”视图中所暴露的数据,因此看起来有点浪费。

对此有何想法和意见?只是想与另一个人确认我的想法。

同样使用Vuex,将数据附加到商店是否可行?例如,如果用户骑自行车浏览更多产品,我是否应该将其他数据从API添加回商店,或者仅保留滚动的50条记录?

非常感谢!

菲尔

1 个答案:

答案 0 :(得分:3)

我真的不认为将所有数据都放在vuex中是个好主意,我会更多地使用Vuex来管理和维护购物车或其他一些状态。 。

如果您的产品数据库已编制好索引,并且您只获得一页产品,那么您的REST调用应该足够快。 您可能应该投入更多时间来改进数据库和Db - 查询。 这将进一步提高您休息呼叫的响应能力......

您还应该认为大多数用户在没有优化搜索的情况下不会超过产品的第3或第4页,因此良好的搜索更为重要。

如果你使用vuex的问题是,如果你存储大量数据(我已经完成了它)它会变得很慢,如果你使用突变和getter它会变得更慢。

如果您真的想将产品存储在客户端上,因为您的潜在用户连接不良,那么我建议使用其他一些离线存储功能,例如IndexedDB(不要使用LocalStorage)或WebSQL他们是旧的和/或供应商特定的......)

我希望这有助于你做出决定。