我正在使用最新的REDX形式(V6)。我試圖讓與狀態值初始化的形式,所以我這樣做,根據文檔:空白字段的形式,`initialValues`沒有考慮到
myForm = reduxForm({
form: 'xxx'
})(myForm);
myForm = connect(state => ({
initialValues: {
...state.taskForm.taskData.parameters
}
})
)(myForm);
然後,我小心地加入我的Field
組件的myForm
的render()
方法,我使用自定義InputField
我的無狀態組件:
export const InputField = ({propName, label}) => (
<Field name={propName}
component={ (prop) => <FormGroup>
<Col xs={4} componentClass={ControlLabel}>{label}</Col>
<Col xs={8}>
<FormControl {...prop} />
</Col>
</FormGroup>
}
/>
);
(我用react-bootstrap
對UI)
我當然三重檢查了name
S代表Field
是正確的,從initialValues
。
但是,窗體顯示爲空白字段而不是初始值。
我可以看到調試器INITIALIZE動作.payload
包含我的領域與正確的初始值。
我認爲這個問題是這樣的:INITIALIZE行動之前REGISTER_FIELD出動。或者至少,一旦REGISTER_FIELD被調度,它不會採用初始值,雖然字段名稱設置正確...但我不知道該怎麼做才能解決問題。而 也許這是由於別的東西...
由於我絕望,我試過reinitializeState: true
,但它不會改變任何東西。
編輯:看來,其實我面對這個問題#1750和解決方案似乎#2210