React 的 useReducer 就是简单封装过的 useState 吗?是一种官方倡导的复杂情况状态处理思路?

查看 47|回复 1
作者:richards64   
刚接触 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来控制不同字段比较多?

usestate, usereducer, React, State

zonghow   
CQRS
您需要登录后才可以回帖 登录 | 立即注册

返回顶部