繁体   English   中英

我应该在哪里从Reactjs应用程序中获取数据?

[英]Where should I fetch data in Reactjs app?

我一直在创建一个Reactjs应用程序。 我遇到了一个问题,想知道从Firebase哪里获取数据。 在根组件(App.jsx)或单个组件中获取数据集合是否更好?

现在,我有用户,产品和销售集合。 一些组件使用相同集合中的数据。 例如:“付款”组件还使用“销售”收款数据进行分析。

情况1:如果我在根组件中获取数据,则不必在组件内部获取数据。

情况2:如果我在组件内部获取数据,则将针对不同路径中的不同组件获取两次相同的数据。

请给我建议更好的处理情况的方法。

您在问题中标记了Redux ,所以我假设您在React App中使用了Redux

如果您正在使用Redux ,请将所有提取内容放入actions文件中。 如果还有其他正在侦听受提取影响的状态的组件,它将自动重新呈现组件数据。 无需您进行两次提取。

情况1:-如果您从根组件中获取所有数据。 一开始您将要处理大量数据,这会减慢应用程序的初始加载速度(但对于非常小的应用程序应该没问题)。 不建议用于中大型应用程序。
情况2:-这种方法很好,但是会增加所有组件的较小延迟(用于从API获取数据),但是如果您担心带宽使用和延迟。 您应该考虑使用像redux这样的统一数据存储。 使用来自redux / thunk等的action / sideEffects一次获取数据,并将其保存在redux存储中。 在所有其他组件中消耗相同的数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM