Не задавать начальное значение текстового поля React Redux
Я пытаюсь установить начальное значение / значение по умолчанию для текстового поля в форме Redux:
const RegisterForm = ({ handleSubmit, pristine, submitting }) => (
<form className="ui form" onSubmit={handleSubmit}>
<div className="field">
<Field
component="input"
type="text"
name="email"
placeholder="E-mail Address"
className="form-control" />
</div>
<div className="field">
<Field
component="input"
type="password"
name="password"
placeholder="Password"
className="form-control" />
</div>
<div className="field">
<Field
component="input"
type="text"
name="inviteCode"
defaultValue="default"
placeholder="Invite Code (Optional)"
className="form-control" />
</div>
<Button type="btn btn-default" disabled={pristine || submitting}>
Register
</Button>
<p className="login-text">Already have an account? </p>
<a href="/">Log in</a>
</form>
);
RegisterForm.propTypes = {
handleSubmit: PropTypes.func.isRequired,
pristine: PropTypes.bool.isRequired,
submitting: PropTypes.bool.isRequired
};
export default reduxForm({
form: 'registerForm',
initialValues: {
inviteCode: 'Test'
}
})(RegisterForm);
Вот где я устанавливаю начальное значение:
initialValues: {
inviteCode: 'Test'
}
Это не имеет никакого отношения к моему inviteCode
поле, оно не показывает никакого значения. Я не получаю ошибок в консоли.
Есть идеи, почему это происходит?
1 ответ
Я просто должен был установить enableReinitialize : true
для моей формы:
export default reduxForm({
form: 'registerForm',
initialValues: {
inviteCode: 'Test'
},
enableReinitialize : true
})(RegisterForm);