Redux-我如何从子组件访问应用程序状态?

时间:2019-01-17 15:40:04

标签: redux

假设我具有以下组件结构:

  

App-> Comp1-> Comp2-> Comp3-> Comp4-> Comp5

AppComp1的父组件,而Comp2store的父组件,依此类推。

我在App中创建Comp1,并使用“ react-redux”库中的“ connect”功能将其连接到Comp5

现在,如果我想访问应用程序状态或从App调度操作,该怎么办?

我知道的方法是从Comp5formatter一直传递道具(状态和调度),这似乎并不直观。

最佳做法是什么?

1 个答案:

答案 0 :(得分:3)

enter image description here

通过Redux忘记了component hierarchy,您可以将store直接连接到组件comp5

import { connect } from "react-redux";

    const mapStateToProps = (state, ownProps) => {
      return {
        ...state.getExampleReducer,
        ...ownProps
      };
    };

    const mapDispatchToProps = {
     ActionsFunctions
    };

    export default connect(
      mapStateToProps,
      mapDispatchToProps
    )(comp5);