Open jtwang7 opened 2 years ago
参考文章:
在 react 应用中使用 Redux,我们会借助到 react-redux 这个库。 在 react-redux 中,React 组件中可以很方便的访问 store 对象 的 state, 并通过 store.dispatch 修改 state,然后通知使用 store.state 的组件更新。 React 组件获取到 redux store 对象的途径 (或者说是 store 对象在 React 中传递的途径) 通过 Context 的 Provider 和 Consumer 实现。 应用 react-redux 时,需要访问 store 的组件必须包裹在 react-redux 提供的 Provider 组件 中。ReactRedux.Provider 在实现过程中使用了 Context 。 它会利用 React.createContext 构建一个 Context 对象,Redux 构建的 store 对象 会保存到 Context._currentValue,然后通过 Context.Provider 将 Context 对象 引入 react 应用 供子组件订阅。被 ReactRedux.Provider 包裹的所有 容器组件(或者使用 hook 的组件) 都可以从 Context 中获取 store 对象。
React - Context 对象解析
参考文章:
Context 在 react-redux 中的使用
在 react 应用中使用 Redux,我们会借助到 react-redux 这个库。 在 react-redux 中,React 组件中可以很方便的访问 store 对象 的 state, 并通过 store.dispatch 修改 state,然后通知使用 store.state 的组件更新。 React 组件获取到 redux store 对象的途径 (或者说是 store 对象在 React 中传递的途径) 通过 Context 的 Provider 和 Consumer 实现。 应用 react-redux 时,需要访问 store 的组件必须包裹在 react-redux 提供的 Provider 组件 中。ReactRedux.Provider 在实现过程中使用了 Context 。 它会利用 React.createContext 构建一个 Context 对象,Redux 构建的 store 对象 会保存到 Context._currentValue,然后通过 Context.Provider 将 Context 对象 引入 react 应用 供子组件订阅。被 ReactRedux.Provider 包裹的所有 容器组件(或者使用 hook 的组件) 都可以从 Context 中获取 store 对象。