const [nav, setNav] = useState({
firstPage: "active",
secondPage: "deactive",
navState: []
});
这是我在上下文中的状态,
const addNavi = (prop) => {
let CurrentNavigation = nav.navState;
if (!CurrentNavigation.includes(prop))
CurrentNavigation.push(prop);
setNav({ ...nav, navState: CurrentNavigation });
CurrentNavigation.forEach(function (val) {
if (val in nav) {
setNav({ ...nav, val: "active" });
}
});
}
我从页面发送 Prop 到这里, 我想将这些 Prop 插入我的数组中,如果这些 Prop 在我的导航中,我也想让它们的值处于事件状态,
我的 Prop 已成功添加到数组,但我不会更改它们的值,如何解决此问题
最佳答案
不要在每次迭代中更新您的状态。首先将所有这些 nav:val 对添加到副本中。所有迭代完成后,将该副本设置为您的状态。
关于javascript - 使用 for-each 和 props 更改状态值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60377946/