in redux-form:如何检索仍未提交的值

时间:2017-02-17 09:23:00

标签: react-redux redux-form react-redux-form

我有一个redux-form组件,它在第一次加载时从redux存储中获取initialValues并填充表单。表格仍未提交。 (它是先前提交的,但是在用户浏览器重新加载后我们从头开始处于新状态)。初始值填充正确。

let CheckoutStep1Form = (props) => {
   return(
     //my fancy form
   )
}

CheckoutStep1Form = reduxForm({
    form: 'step1', // a unique name for this form
})(CheckoutStep1Form);

CheckoutStep1Form = connect(
    state => ({
        initialValues: {
          //my initial values
        }
    })
)(CheckoutStep1Form)

除此之外,我还有另一个组件,其目的是在普通视图中总结前面步骤中提供的所有表单信息。

const CheckoutStep1Summary = ({values}) => {
   return(
     //my fancy summarize view
   )
}

export default connect(
    state => ({
        values: getFormValues('step1')(state)
    })
)(CheckoutStep1Summary)

问题:getFormValues('step1')(state)返回空。未提交表格中的任何值。

所以问题是:我可以使用redux-form以某种方式从表单中获取表单值吗?

当然我可以做一些解决方法,因为我有州内的值,但我想知道redux-form是否考虑了这种情况。

1 个答案:

答案 0 :(得分:1)

我很困惑,表格中的价值观是否合适?您说“初始值已正确填充”,这使我认为是,但getFormValues()除了从Redux返回值之外没有做任何其他事情。我建议使用Redux Dev Tools来确定表单状态是什么样的。

你可能在这个问题上输错了,但是这个:

CheckoutStep1Form = connect(
    state => ({
        initialValues: {
          //my initial values
        }
    })
)

应该是这样的:

CheckoutStep1Form = connect(
    state => ({
        initialValues: {
          //my initial values
        }
    })
)(CheckoutStep1Form) // <-------

希望有帮助...