通过根组件中的 React Context 传递 Redux 存储是不是正确?

Posted

技术标签:

【中文标题】通过根组件中的 React Context 传递 Redux 存储是不是正确?【英文标题】:Is it right way to pass Redux store via React Context in Root Component?通过根组件中的 React Context 传递 Redux 存储是否正确? 【发布时间】:2018-12-12 12:00:47 【问题描述】:

我正在构建一个大型React 应用程序。实际上它是高级管理面板,我想使用Redux 处理应用程序的全局stateRedux Saga 异步操作。

前几天在medium看到一篇文章,讲的是新的React Context API,非常棒又好用。

我还看到了一个有用的Stack Overflow 问题,关于使用React Context,Here 是关于React ContextReact,我的情况有些不同。

就我而言,我想使用Redux 来控制login 等应用程序的全局state、全局数据等,并使用React Context 将这些数据传递给所有组件树,这是正确的方法吗?有没有更好的利用方式?

【问题讨论】:

【参考方案1】:

react-redux 在内部使用context 将数据传递给组件。使用 redux,您可以使用 connect 并将数据提供给需要它的组件。没有必要为此使用上下文

例如你有一个管理组件,你可以像传递状态值给它

import  connect  from 'react-redux';

class Admin extends React.Component 
    ...


const mapStateToProps = (state) => 
    return 
        isLoggedIn: state.isLoggedIn
    


export default connect(mapStateToProps)(Admin);

你可以了解更多here

【讨论】:

以上是关于通过根组件中的 React Context 传递 Redux 存储是不是正确?的主要内容,如果未能解决你的问题,请参考以下文章