共计 493 个字符,预计需要花费 2 分钟才能阅读完成。
刚接触 React 的时候就有些不太理解 useReducer
的用法,总感觉用起来比 useState
还要繁琐,而且有些不够直观,所以基本上也没有使用过。最近看了新版的 React 官网文档过后发现,甚至官方直接在文档里以留做习题的形式给出了一个用 useState
来实现的useReducer
:
import {useState} from 'react';
export function useReducer(reducer, initialState) {const [state, setState] = useState(initialState);
function dispatch(action) {const nextState = reducer(state, action);
setState(nextState);
}
return [state, dispatch];
}
所以 useReducer
就是简单封装过的 useState
吗?有什么单用 useState
做不到的事情吗?实际在开发中面对一个组件有多个参数状态需要分别控制的时候是使用一组 useState
比较多还是一个对象然后用 useReducer
来控制不同字段比较多?
正文完