Как установить скрытые поля в форме redux в реакции native?
i jsut не может найти способ, как это сделать. любая помощь?
Как установить скрытые поля в форме redux в реакции native?
i jsut не может найти способ, как это сделать. любая помощь?
i закончил использовать это:
this.props.dispatch(change("FORM_NAME","FIELD_NAME","VALUE"))
после запуска этого кода, форма создаст поле, если оно не существует
Я столкнулся с той же проблемой. То, что я делаю, это объявить поле как это и установить высоту в 0. Это немного хаки, но это работает в моем случае.
<Field
component={TextInput}
name="departure_city_name"
type="hidden"
style={{ height: 0 }}
/>
И я изменяю значение следующим образом: this.props.change("departure_city_name", cityData.name);
Надеюсь, что это поможет.
вам не нужно отправлять какие-либо действия, просто внесите это изменение всякий раз, когда вам нужно скрытое поле в форме избыточности.
this.props.change('Field_name', value)
Технически вам не нужно создавать поле type = hidden, потому что вы можете вызвать функцию change
для "скрытого" поля, которое вы хотите изменить, если поле не существует. Redux-форма добавит его в состояние формы, как фактическое поле
MyForm = reduxForm({
form: 'myForm'
})(MyForm)
MyForm = connect(
state => ({
initialValues: { areYouOk: 'no' }
})
)(MyForm)
export default MyForm
Установили ли вы начальные значения или нет, вы всегда сможете вызвать функцию изменения с новым скрытым значением, и она все равно будет работать
let MyForm = ({ submitHandler, change }) => {
return (
<form onSubmit={submitHandler}>
<button
onClick={() => {
change('areYouOk', 'yes');
}}
label={'Yes'}
/>
</form>
);
}