У меня есть компонент, в котором у меня есть форма мастера, на первой вкладке будут заданы сведения о отметке учащегося, а на второй вкладке - основные сведения об учащемся. так из cookie я получаю имя пользователя на второй вкладке, как автозаполнение.
поэтому весь мой компонент состоит из index.js, меток wizard, деталей wizardform.
index.js
render(){
return(
<WizardFormMarks initialValues={this.props.initialValues}/>
<WizardFormDetails initialValues={this.props.initialValues}/>
)
}
const mapStateToProps = (state) => {
let initialValuesCopy = state.initialValues || {}
initialValuesCopy.username = extractValue("username") // from cookie
return {
initialValues: initialValuesCopy
};
}
const mapDispatchToProps = (dispatch) => ({
// fetching the user details since same component is used for editing also , so to fetch details this api will perform only if in route params are there like localhost:3000/student/test1,
})
Student = connect(
mapStateToProps,
mapDispatchToProps
)(Student);
export default Student
wizardformmarks.js
export default reduxForm({
form: 'wizard', //
destroyOnUnmount: false,
forceUnregisterOnUnmount: true,
enableReinitialize: true
})(
connect(
mapStateToProps,
mapDispatchToProps
)(WizardFormMarks)
);
wizardformdetails.js
render(){
return(
<div>
<Field
name="username"
type="text"
component={customField}
label="Enter your name.."
disabledStatus={true}
/>
</div>
)
}
export default reduxForm({
form: 'wizard',
destroyOnUnmount: false,
forceUnregisterOnUnmount: true,
})(WizardFormDetails);
Также один и тот же компонент используется для редактирования и создания. Редактировать, создавать и
во время редактирования, если я перейду к другому компоненту, данные сохранятся. Но при создании данные не сохраняются, если я перехожу к другому компоненту и возвращаюсь. Даже если destroyOnUnmount установлено как false .
Как я могу сохранить данные. Кроме того, исходное состояние по умолчанию - «». вот почему я проверяю и назначаю объект.