tutorial react form español control reactjs redux redux-form

reactjs - react - Cómo establecer programáticamente el valor del campo Redux-Form



redux form react native (1)

Puede tener la lógica onChange en this.handleSelectChange({ value, type: input.name }) y usar change action de redux-form

De acuerdo con los documentos:

cambio (campo: Cadena, valor: cualquiera): Función

Cambia el valor de un campo en la tienda de Redux. Este es un creador de acciones encuadernado, por lo que no devuelve nada.

Código:

handleSelectChange = (value, type) => { if(type === "site") { this.props.change(''net'', "newValue"); } } const mapDispatchToProps = (dispatch) => { return bindActionCreators({change}, dispatch); }

Cuando uso redux-form v7, encuentro que no hay forma de establecer el valor del campo. Ahora en mi form tengo dos componentes select , el valor del segundo será claro cuando cambie el primer valor del componente select .

en clase render:

<div className={classNames(style.line, style.largeLine)}> <div className={style.lable}>site:</div> <div className={style.content}> <Field name="site" options={sites} clearable={false} component={this.renderSelectField} validate={[required]} /> </div> </div> <div className={classNames(style.line, style.largeLine)}> <div className={style.lable}>net:</div> <div className={style.content}> <Field name="net" options={nets} clearable={false} component={this.renderSelectField} validate={[required]} warning={warnings.net} /> </div> </div>

Ahora agrego el gancho de cambio de select , y cómo puedo cambiar el otro valor de select

renderSelectField = props => { const { input, type, meta: { touched, error }, ...others } = props const { onChange } = input const _onChange = value => { onChange(value) this.handleSelectChange({ value, type: input.name }) } return ( <CHSelect error={touched && error} {...input} {...others} onChange={_onChange} onBlur={null} /> ) }