如何将组件的ownProps传递给reduxForm?

时间:2018-06-19 10:29:03

标签: reactjs redux react-redux redux-form

this.props.data未定义

   initialValues: {
      data: this.props.data
    }

下面是更多代码:

const mapState = (state, ownProps) => {
  console.log(ownProps.formData)
  return {
    data: ownProps.formData
  }
}

export default compose(
  connect(
    mapState,
    null
  ),
  reduxForm({
    form: "info-form",
    initialValues: {
      data: this.props.data
    }
  })
)(InfoForm)

ownProps.formData是一个对象数组。当我在mapState的控制台中记录它时,我可以看到它。如果我在表单组件之外创建const data=[{...},{...}]并将其引用为:

initialValues: {
  data: data
}

表单按预期工作

1 个答案:

答案 0 :(得分:0)

使用initialValues有两种方法,一种是传递给传递给reduxForm HOC的对象,另一种方法是在项目的其他地方导入这个组件时可以传递它是

<InfoForm initialValues={{ data }} />

请在此处参考此链接https://redux-form.com/6.7.0/examples/initializefromstate/。它明确指出

  

提供给initialValues prop或reduxForm()配置参数的值将被加载到表单状态,然后被处理为“pristine”