[英]React state object attribute is getting set as undefined
我有以下 state object 初始化称为 myCriteria
const [myCriteria, setMyCriteria] = useState({
myFieldStatusDropdown: myFieldStatusDropdown,
selectedMyFieldStatus: myVarMyFieldStatusDropdown?.value,
});
现在我在这条线的正上方设置了断点
setMyCriteria({
...myCriteria,
selectedMyFieldStatus: myCriteria.myFieldStatusDropdown[0]
});
在断点处,我检查并查看 myCriteria.myFieldStatusDropdown 如下
[
{
code: 'Select',
value: 'Select'
}, {
code: 'AA',
value: 'A 1'
}, {
code: 'BB',
value: 'B 1'
}
]
但是由于某些奇怪的原因,在执行 setMyCriteria 行之后,当我检查 myCriteria.selectedMyFieldStatus 的值时,它是错误的,即它没有被设置为
{
code: 'Select',
value: 'Select'
}
它被设置为未定义
不确定为什么它被设置为未定义
我简单地使用myCriteria
进行了初始化,并以数组的形式将三个对象放入其中
var myFieldStatusDropdown = [
{
code: 'Select',
value: 'Select'
}, {
code: 'AA',
value: 'A 1'
}, {
code: 'BB',
value: 'B 1'
}
]
const [myCriteria, setMyCriteria] = useState({
myFieldStatusDropdown: myFieldStatusDropdown,
selectedMyFieldStatus: myFieldStatusDropdown[1]
});
然后我使用setMyCriteria
来更新myCriteria
setMyCriteria({
...myCriteria,
selectedMyFieldStatus: myFieldStatusDropdown[0]
},[myCriteria]);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.