/ / redux-form Felder werden zurückgesetzt, wenn ein an den redux-Status angehängter Wert geändert wird - Javascript, Reactjs, Redux, Redux-Form

redux-form-Felder werden zurückgesetzt, wenn ein Wert geändert wird, der an redux state angehängt ist - javascript, reactjs, redux, redux-form

Ich habe ein Redux-Formular mit drei Feldern wie folgt konfiguriert:

function mapState(state) {
return {
initialValues: {
terms: state.register.toJS().terms.value
}
};
};

[map dispatch object here]

export const MyFormContainer = reduxForm({
form: "myForm",
fields: ["email", "password", "terms"]
}, mapState, mapDispatch)(MyForm);

Jedes Feld verteilt die übergebenen Requisiten gemäß den Dokumenten, z. {...Email}. Das Kontrollkästchen "terms" enthält ein onChange, das einen actionCreator aufruft, um meinen Redux-Status zu aktualisieren:

<input type="checkbox" {...terms} onChange={this.handleTermsToggle.bind(this)}/>

Wenn Sie auf das Kontrollkästchen klicken, werden sowohl die E-Mail- als auch die Passwortfelder auf leer gesetzt.

Antworten:

0 für die Antwort № 1

Es stellte sich heraus, dass ich das Problem von derfalscher Winkel Ich musste diesen Teil des Zustandsbaums vollständig entfernen und stattdessen {change} aus "reag-redux" in meiner äußeren Komponente verwenden, um den Wert zu ändern.

import { change } from "react-redux"

<button onClick={() => {
this.props.change("myForm", "terms" true);
}}>Click Me</button>

... and don"t forget to map change to mapDispatchToProps