react / useReducer

Function: useReducer()

useReducer(reducer, initializerArg, initializer)

function useReducer<R, I>(
   reducer: R,
   initializerArg: I,
   initializer: (arg: I) => ReducerStateWithoutAction<R>): [ReducerStateWithoutAction<R>, DispatchWithoutAction]

An alternative to useState.

useReducer is usually preferable to useState when you have complex state logic that involves multiple sub-values. It also lets you optimize performance for components that trigger deep updates because you can pass dispatch down instead of callbacks.

Type Parameters

Type Parameter
R extends ReducerWithoutAction<any>
I

Parameters

Parameter Type
reducer R
initializerArg I
initializer (arg: I) => ReducerStateWithoutAction<R>

Returns

[ReducerStateWithoutAction<R>, DispatchWithoutAction]

Version

16.8.0

See

https://react.dev/reference/react/useReducer

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1896

useReducer(reducer, initializerArg, initializer)

function useReducer<R>(
   reducer: R,
   initializerArg: ReducerStateWithoutAction<R>,
   initializer?: undefined): [ReducerStateWithoutAction<R>, DispatchWithoutAction]

An alternative to useState.

useReducer is usually preferable to useState when you have complex state logic that involves multiple sub-values. It also lets you optimize performance for components that trigger deep updates because you can pass dispatch down instead of callbacks.

Type Parameters

Type Parameter
R extends ReducerWithoutAction<any>

Parameters

Parameter Type
reducer R
initializerArg ReducerStateWithoutAction<R>
initializer? undefined

Returns

[ReducerStateWithoutAction<R>, DispatchWithoutAction]

Version

16.8.0

See

https://react.dev/reference/react/useReducer

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1912

useReducer(reducer, initializerArg, initializer)

function useReducer<R, I>(
   reducer: R,
   initializerArg: I & ReducerState<R>,
   initializer: (arg: I & ReducerState<R>) => ReducerState<R>): [ReducerState<R>, Dispatch<ReducerAction<R>>]

An alternative to useState.

useReducer is usually preferable to useState when you have complex state logic that involves multiple sub-values. It also lets you optimize performance for components that trigger deep updates because you can pass dispatch down instead of callbacks.

Type Parameters

Type Parameter
R extends Reducer<any, any>
I

Parameters

Parameter Type
reducer R
initializerArg I & ReducerState<R>
initializer (arg: I & ReducerState<R>) => ReducerState<R>

Returns

[ReducerState<R>, Dispatch<ReducerAction<R>>]

Version

16.8.0

See

https://react.dev/reference/react/useReducer

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1930

useReducer(reducer, initializerArg, initializer)

function useReducer<R, I>(
   reducer: R,
   initializerArg: I,
   initializer: (arg: I) => ReducerState<R>): [ReducerState<R>, Dispatch<ReducerAction<R>>]

An alternative to useState.

useReducer is usually preferable to useState when you have complex state logic that involves multiple sub-values. It also lets you optimize performance for components that trigger deep updates because you can pass dispatch down instead of callbacks.

Type Parameters

Type Parameter
R extends Reducer<any, any>
I

Parameters

Parameter Type
reducer R
initializerArg I
initializer (arg: I) => ReducerState<R>

Returns

[ReducerState<R>, Dispatch<ReducerAction<R>>]

Version

16.8.0

See

https://react.dev/reference/react/useReducer

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1946

useReducer(reducer, initialState, initializer)

function useReducer<R>(
   reducer: R,
   initialState: ReducerState<R>,
   initializer?: undefined): [ReducerState<R>, Dispatch<ReducerAction<R>>]

An alternative to useState.

useReducer is usually preferable to useState when you have complex state logic that involves multiple sub-values. It also lets you optimize performance for components that trigger deep updates because you can pass dispatch down instead of callbacks.

Type Parameters

Type Parameter
R extends Reducer<any, any>

Parameters

Parameter Type
reducer R
initialState ReducerState<R>
initializer? undefined

Returns

[ReducerState<R>, Dispatch<ReducerAction<R>>]

Version

16.8.0

See

https://react.dev/reference/react/useReducer

Defined in

.pnpm/@types+react@18.3.11/node_modules/@types/react/ts5.0/index.d.ts:1971

除非另有说明,本项目采用知识共享署名 4.0 国际许可协议进行许可,代码示例采用 Apache License 2.0 许可协议进行许可。