将不同的参数传递给 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
也不会反映状态的变化。
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
也不会反映状态的变化。