我的问题是我的useState得到了错误的数字
例如,当我打印e.target.value时,它会输出1,但我的selectedIndex会给我2或者当我得到0个selectedIndex时,会重试1个类似的东西。你知道为什么会发生这种事吗?
<Select
id="SelectGrade"
value={selectedIndex}
//Important part
onChange={(e) => {
console.log(e.target.value);
setSelectedIndex(e.target.value),
console.log(selectedIndex);
}}
>
{pflegeengel.map(({ Vorname }, index) => {
return (
<MenuItem value={index} key={index}>
{Vorname}
</MenuItem>
);
})}
</Select>
当您在设置后立即控制台状态值时,会给您旧的值。这是你的问题吗?无论如何,状态都会更新。如果您想检查值更改,请在设置后使用以下方法
React.useEffect(() => { console.log(selectedIndex)}, [selectedIndex]);