createContext() 和 useReducer() 是否接收相同的'initialState'对象?



尝试打字稿 + 反应钩子 + 上下文 api,我注意到createContextuseReducer都需要 'initialState' 的参数。定义一次并将相同的对象传递到两者中感觉很奇怪,这让我想知道有什么区别。

有什么区别?

上下文是一种与父组件共享值的特殊方式,用于深度嵌套的子组件。

https://reactjs.org/docs/context.html

useReducer完全是另一回事,它是一种使用转换状态的纯函数管理 React 状态的方法。

https://reactjs.org/docs/hooks-reference.html#usereducer

它们彼此无关。它们是完全独立使用的,尽管在某些情况下您可以将它们一起使用,但 React 没有任何固有的东西将它们链接在一起。

因此,它们需要不同的initialState参数,因为它们是不同的系统,具有不同的要求和不同的用途。

相关内容

  • 没有找到相关文章

最新更新