2017-12-02 200 views
2

引用时没有更新:https://redux-form.com/6.7.0/examples/initializefromstate/终极版表格 - initialValues使用撰写

我想实现一个配置文件形式与从一个API端点获取初始数据的更新。

当我参考上面的redux-form例子时,我已经能够得到这个例子。然而,当我重构它使用撰写“initialValues”不会被插入的字段。

此代码不能正常工作,initialValues包含数据,但不插入表单域。

export default compose(
    reduxForm({ 
     form: 'initializeFromState', 
     enableReinitialize : true 
    }), 
    connect(state => ({ 
     initialValues: state.profile, // pull initial values from account reducer 
    }), actions) 
)(EditProfile); 

但是这个代码的工作原理与参考例子略有不同。 “initialValues”也包含数据。

EditProfile = reduxForm({ 
    form: 'initializeFromState', 
    enableReinitialize: true 
})(EditProfile); 

EditProfile = connect(
    state => ({ 
     initialValues: state.profile, 
    }), 
    actions, 
)(EditProfile); 

export default EditProfile; 

它看起来与我相似,但也许我不能用这样的写作?

回答

3

您将错误的顺序传递给compose。由功能向从一开始就结束执行。因此,您需要将订单逆转为与您在第二个示例中获得的结果相同:

export default compose(
    connect(state => ({ 
     initialValues: state.profile, // pull initial values from account reducer 
    }), actions), 
    reduxForm({ 
     form: 'initializeFromState', 
     enableReinitialize : true 
    }) 
)(EditProfile);