@H_404_3@react-redux 另一方面,它实现了React友好的方法,并提供了许多中间件和包装器,因此库使用者不必自己设置整个过程。
虽然@H_404_3@useReducer这是Redux工作方式的一部分,但并不是全部。为了使您能够在组件中深入使用调度和状态,您仍然必须结合使用@H_404_3@useContext,@H_404_3@useReducer就像重新发明轮子一样。
最重要的是,@H_404_3@useReducer为您提供了一种@H_404_3@dispatch方法,您可以使用该方法将简单的旧对象作为操作进行分派。目前还没有办法添加@H_404_3@middlewares到这些,例如@H_404_3@thunk,@H_404_3@saga等等。
您也可以在应用程序中使用多个reducer,@H_404_3@useReducer但是将它们组合成一个单一商店的方法仍然必须由开发人员管理。
此外,React docs声明了状态逻辑复杂时@H_404_3@useReducer的替代方法@H_404_3@useState
@H_404_3@useReducer``useState当您具有包含多个子值的复杂状态逻辑或下一个状态取决于上一个值时,通常更可取。@H_404_3@useReducer还可以让您优化触发深层更新的组件的性能,因为您可以传递调度而不是回调。
什么样钩@H_404_3@useContext,@H_404_3@useReducer做的是,他们消除对依赖@H_404_3@Redux于小型的应用程序。