尝试打字稿+ react hooks +上下文api,我注意到createContext
和useReducer
都具有'initialState'所需的参数。一次定义一次并将相同的对象传递给两者,这感觉很奇怪,这让我想知道区别是什么。
答案 0 :(得分:0)
有什么区别?
好吧,上下文是一种与父组件共享值以深度嵌套子代的特殊方法。
https://reactjs.org/docs/context.html
useReducer
完全是另外一回事,它是一种通过转换状态的纯函数来管理React状态的方法。
https://reactjs.org/docs/hooks-reference.html#usereducer
他们彼此无关。它们是完全独立使用的,尽管在某些情况下您可以将它们一起使用,但是React并没有固有的内在联系方式。
因此,他们需要不同的initialState
参数,因为它们是不同的系统,具有不同的要求和用法。