В настоящее время у меня есть форма в Redux-форме, которая извлекает начальные значения из API. Однако всякий раз, когда я редактирую одно из этих значений и затем отправляю форму, она возвращает старое начальное значение (кажется, не обновляется). Я хотел бы иметь возможность редактировать поле, отправить, а затем обновить начальное значение до нового значения, чтобы при повторной загрузке формы вы увидели самые последние изменения / изменения. Прямо сейчас, вот как я инициализирую свои данные:
componentDidMount(){
this.props.offerCallBack()
.then(c => {
this.setState({
offerContent: c,
});
this.handleInitialize();
})
.catch(error => {
console.log(error);
});
}
handleInitialize() {
const offerContent = JSON.parse(this.state.offerContent.content);
const initData = {
"questionText": offerContent.question_text === null ? "Enter Question Text" : offerContent.question_text,
"questionType": offerContent.question_type === null ? "" : offerContent.question_type,
this.props.initialize(initData);
}
Вот моя функция отправки:
onSubmit(values) {
console.log(values);
const questionData = Object.assign({}, values, { questionText: undefined });
this.props.saveOffer(questionData);
}
Пример одного из моих полей внутри моего
<Field
name="questionText"
type="text"
id="questionText"
component={renderField}
label="Question Text"
onChange={this.handleChange}
/>
Тогда низ моей редукционной формы
const form = reduxForm({
form: 'offerquestion',
enableReinitialize: true
});
function mapStateToProps(state) {
return {
offerContent: state.offerContent,
initialValues: state.offerContent
};
}
export default connect(mapStateToProps)(form(OfferExample));
Любая помощь будет принята с благодарностью, я застрял на этом в течение нескольких дней!