data redux 组件中的异步

Asynchronous in data redux components

我是 reactjs 的新手。我正在用 redux thunk 创建一个电影网站。在 home 容器中,我使用 axios 调用 API 来获取电影数据列表并将其保存在 store 中。

我的家庭容器有一个旋转木马组件,通过 useSelector 获取存储的数据并循环它以呈现许多旋转木马项目。问题就在这里。 store 中的初始数据状态为 null,当我的应用程序调用 API 时,carousel 组件仍然映射它并在那里出现错误: TypeError: Cannot read property 'map' of null

我用 ? 解决了这个问题语法:data?.map()... 并且不会出现该错误。 我想知道我们是否有比我更好的解决方案?我的意思是它可以等到获取数据成功,而不是在任何组件中使用 ?.

如果有人帮我解决问题,谢谢。你可以给我一些在实际项目中使用的关键字或库。我会学习导入我自己。 谢谢

使用 ? 是最短的方法,或者您可以放置​​一个 if 条件来检查电影数组是否为空。像 if(moviesArr !== null) //做剩下的事情...

使用空数组而不是 null,因为电影商店的初始状态为空。