我有这样的状态,有钥匙和子钥匙。我想根据切换原则将值更改true为false,反之亦然。我尝试访问我需要的密钥,如果对象中只有一个父密钥,它可以工作,但如果我有多个父密钥,它就不起作用。
告诉我在哪里修复错误?谢谢你!
const [Layers, setLayers] = useState({
KeyParentOne: { Control: true, DropDown: false },
KeyParentTwo: { Control: true, DropDown: false }
});
<button onClick={() => {
setVal((prevState) => ({ KeyParentOne: { ...prevState.KeyParentOne, Control: !prevState.KeyParentOne.Control} }))}
>
Click
</button>
<button onClick={() => {
setVal((prevState) => ({ KeyParentOne: { ...prevState.KeyParentOne, DropDown: !prevState.KeyParentOne.DropDown} }))}
>
Click
</button>
<button onClick={() => {
setVal((prevState) => ({ KeyParentTwo: { ...prevState.KeyParentTwo, Control: !prevState.KeyParentTwo.Control} }))}
>
Click
</button>
<button onClick={() => {
setVal((prevState) => ({ KeyParentTwo: { ...prevState.KeyParentTwo, DropDown: !prevState.KeyParentTwo.DropDown} }))}
>
Click
</button>
1 个回答