将不同的参数传递给 React useState

Passing varying argument to React useState

React 文档:

const [state, setState] = useState(initialState);

During the initial render, the returned state (state) is the same as the value passed as the first argument (initialState).

我明白这句话的意思,initialState 是不变的。但是,如果 initialState 在后续渲染中具有不同的值,会发生什么吗?假设 initialState 只读一次(第一次调用 useState 时)是否正确?

参数 initialState 在初始渲染期间仅由 useState 传递和使用一次,并且任何后续对 initialState 的更改不是通过引用突变完成的,都不会更新状态值。

但是,如果您在其引用处改变 initialState,它可能会反映在状态中。但是,如果你在改变 initialState 之前进行一次状态更新,状态将不再引用 initialState,因此即使改变 initialState 也不会反映状态的变化。