首页 > 解决方案 > 如何在 react/redux 应用程序中正确获取数据?

问题描述

我已经看到这个问题重复了很多次,但我正在尝试开发一个 react/redux 应用程序,每次我尝试在页面加载之前获取数据时都会遇到很多问题。我觉得问题出在异步调用上,看起来有时当我使用数据获取的数据结果时,商店还没有上传,所以我尝试访问未定义的变量并出现错误。

我尝试使用componentDidMount()并从方法内部触发获取数据并为我实现存储状态的操作。当我无法在 html 中直接使用数据时,我也尝试使用componentDidMount()然后使用数据。componentWillReceiveProps(nextProps)

所以问题是,有时(并非总是)我想要获取的数据在我使用它时已经未定义。有没有办法避免这种情况?以及如何正确获取数据?

标签: reactjsreduxfetch

解决方案


您是否尝试过使用 componentWillMount?您放入 componentWillMount 的所有内容都将在您的应用程序渲染之前执行,这与 componentDidMount 不同,您首先渲染您的应用程序,然后执行您放入的所有内容。

另外,你有没有看过 hooks 和 useEffect 函数?尝试研究钩子,因为它将解决许多具有标准生命周期功能的样板。


推荐阅读