【发布时间】:2021-04-07 08:31:36
【问题描述】:
我正在使用 useEffect 将来自 redux 的所有数据保存在一个状态中。
下面是我的代码:
const [items, setItems] = useState();
React.useEffect(() => {
setItems(createMenuReducer.data.product);
console.log("item", items);
}, [items]);
<ScrollView>
{createMenuReducer &&
items?.map((item, index) => {
return (
<ItemComponent
item={item}
/>
);
})}
</ScrollView>
console.log 输出:
item undefined
但是当我再次单击保存时,所有项目都得到了安慰:
item (10) [{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}]
我试图更新状态,认为它也会更新 UI,但那没有发生。第一次加载时我得到一个空白页面,但是当我再次单击保存时,所有项目都显示在 UI 中。如何解决这个问题,以便在应用加载时所有项目都在屏幕上??
【问题讨论】:
标签: react-native react-hooks react-native-android react-native-ios react-state