问题描述
我不确定这是否是 Ionic React 4.8.0-rc.0 到 5.2.2
之间的预期行为场景
-
当我第一次运行应用程序时,Tab 1 将触发 API 调用以填充项目
发现
我发现当我回到 Tab1 进行 Ionic React 5.2.2 时,items1
总是变成 []
。但是,版本 4.8.0-rc.0 没有这种奇怪的行为,这意味着在导航离开并返回到 Tab1 后 items1
内的 useIonViewWillEnter
值是相同的
useIonViewWillEnter(async () => {
console.log(items1);
if (items1.length < 4) {
setItems1([1,2,3]);
}
});
4.8.0-rc.0
https://stackblitz.com/edit/ionic-react-tabs-lj2ekk
5.2.2
https://stackblitz.com/edit/ionic-react-tabs-tvtv3c
您可以通过单击按 1 添加按钮来查看列表是否增加进行测试。然后导航离开和返回。在 5.2.2 中,列表将再次返回 [1,3]
。
所以我的问题是:这是一个错误吗?如果没有,现在的行为是否有所不同以及如何解决此问题?
解决方法
这就解决了
useIonViewWillEnter(async () => {
console.log(items1);
if (items1.length < 4) {
setItems1([1,2,3]);
}
},[items1]);