首页 > 解决方案 > (VUE / VUEX) 从 API 调用中获取和解析数据的最佳实践

问题描述

我对从 API 调用中获取/解析数据时的最佳实践有疑问。

选项 1:在 fetch 上使用适配器调用 API 来存储修改后的数据 选项 2:始终存储来自 API 调用的原始数据并依赖 getter 进行适配

注意:返回的数据集会很大,我可能不会使用原始数据。

就代码清晰度、简单性和性能而言,哪个选项最好?

标签: vuejs2vuex

解决方案


在您上面描述的情况下,我建议Option 1over Option 2.

一般来说,我建议解析原始数据并将其保存在状态中(选项 1),而不是将原始数据保存在状态中并使用 getter 解析它(选项 2)。

根据问题中的标准降低我的建议:

  • 代码清晰和简单:

    根据 API 数据结构,您的 getter 中可能存在重复代码,这些代码在接收 API 数据后在解析函数中会得到更好的处理。

    另一个好处是可以在将数据保存到存储之前处理任何 API 错误或意外更改。这种方式可以实现更简单的错误处理,而不是在需要时验证每个 getter 值Option 2

  • 表现:

    将更少的数据保存到状态将意味着使用更少的内存,这取决于原始数据的大小,这可能会产生影响。获得的另一个诗意的好处Option 1是数据是预先解析的,并且在需要数据时不需要运行代码。

旁注:这两个选项都有效,更合适的选项主要取决于您的状态架构、原始数据格式以及代码中如何使用该数据。


推荐阅读