为什么连接序列很重要?

时间:2017-09-30 18:16:11

标签: reactjs react-native redux react-redux

使用connect中的react-redux时,如果我在mapDispatchToProps之前mapStateToProps,则该组件无法呈现dispatch is not a function

function mapDispatchToProps(dispatch) {
  return {
    getData: () => {
      dispatch(getSomething())
    }
  }
}

function mapStateToProps(state) {
  return {
      somevalue: state.somevalue,
  }
}

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

//export default connect( mapDispatchToProps, mapStateToProps ) ( Comp ); THIS FAILS

为什么mapStateToPropsmapDispatchToProps的序列很重要?

1 个答案:

答案 0 :(得分:2)

当它在react-redux documentation for connect中陈述时,它等待4个不同的参数。

如果您更改参数的顺序,您的函数将使用错误的参数触发,这将导致您的函数失败。

connect([mapStateToProps], [mapDispatchToProps], [mergeProps], [options])
     

将React组件连接到Redux存储。连接是一个门面   围绕connectAdvanced,为最常见的API提供方便的API   用例。

     

它不会修改传递给它的组件类;相反,它   返回一个新的连接组件类供您使用。