[英]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.