将Redux存储数据作为Props从parent1-> parent2-> child(OR)传递,使用mapToStateProps在子组件中直接调用Redux存储?

时间:2019-09-27 15:55:00

标签: reactjs react-redux react-props

与直接在子组件中调用Redux存储相比,将Redux存储数据从父组件(已经用于其他功能)传递给子组件是否更好?

我尝试过传递道具以及直接在Child组件中调用。找不到功能上的太大差异,只是想知道什么是标准做法以及它如何影响大数据的性能。

ExampleReduxdata: {'Apple', 'Banana', 'Mango', 'Orange'}

    class ParentComponent1 extends React.Component {

    render(){
     return (<ParentComponent2 reducerData={this.props.reducerData} />
    }

    const mapStateToProps = {

    reducerData: state.ExampleReduxdata,
     }
    }
    class ParentComponent2 extends React.Component{
    render(){
     return (<ChildComponent reducerData={this.props.reducerData} />
     }

    }
    (OR)


    class ChildComponent extends React.Component{

    render(){
     return (
        <div>{this.props.reducerData}</div>
       );
    }

    const mapStateToProps = {

    reducerData: state.ExampleReduxdata,
    } 

    }

1 个答案:

答案 0 :(得分:1)

基于Redux主要文档

  

Redux的反应绑定将表示性组件与容器组件分开。这种方法可以使您的应用更易于理解,并允许您更轻松地重用组件。

因此,我想使您的组件可重用并遵循“真理的唯一来源”原则,最好用connect方法包装您的组件!

避免这些方法和功能组件包装的另一种简便方法是Redux钩子useSelectoruseDispatch