如何在 initialState 是对象时更新 State

How to update State when initialState is an object

我正在尝试使用挂钩更新我的应用程序的状态,但我无法弄清楚如何访问每个挂钩以使其在完成后变为真。

    const [stepCompleted, setStepCompleted] = useState({
        stepOne: false,
        stepTwo: false,
        stepThree: false,
        stepFour: false,
        stepFive: false,
        stepSix: false,
        stepSeven: false,
        stepEight: false,
    });

这没有用:

setStepCompleted.stepOne(true)

------------------------------

setStepCompleted(stepOne = true)

您可以将函数传递给更新程序,以获取当前状态并将其与新状态合并:

setStepCompleted(state => ({...state, stepOne: true}))

但是,如果值在很大程度上是独立的,则具有单独的状态可能更有用。

另请参阅: