reactjs – 何时使用本机React.useReducer Hook以及它与Redux的
因此,Hook可以从React 16.8获得.从他们的文档中,Hooks作为功能组件中的状态替换者.基本的钩子是:useState,useEffect,useContext,但是还有一些额外的钩子,其中一个是useReducer,看起来它使用与Redux相同的动作分派架构.
问题是,如果它因为相似而取代Redux? 它更适合特定项目吗? 它适合哪里? 解决方法
Redux是一个以特定方式鼓励数据流的库.
另一方面,react-redux实现了React友好方法,并提供了大量的中间件和包装器,以便库消费者不必自己设置整个过程. 虽然useReducer是Redux工作方式的一部分,但它并不是Redux的全部内容.为了使您能够使用调度和状态深入了解组件,您仍然必须使用useContext和useReducer组合,这就像重新发明轮子一样. 除此之外,useReducer只为您提供了一个调度方法,您可以使用该方法将普通旧对象作为操作进行调度.还没有办法向这些添加中间件,如thunk,saga等等. 您还可以使用useReducer在应用程序中使用多个reducer,但是将这些组合成单个存储的方式仍然需要由开发人员进行管理. 另外React docs表示当状态逻辑很复杂时,useReducer是useState的替代方法
这些钩子如useContext,useReducer做的是它们消除了对小应用程序的Redux依赖. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |