Ich bin mir bewusst, dass, wenn Sie eine SubmissionError
von Ihrer handleSubmit()
Funktion werfen, der redux-form
Code wird die Fehler der entsprechenden Felder und/oder das Formular selbst ausfüllen.Manuell redux-Formular Feld und/oder Formularfehler
Doch das API von Feld/Paßfehlern Einstellung fest Paare unsere Implementierung von handleSumbit()
einen Anrufer des redux-form
Code zu sein (die die SubmissionError
Ausnahmebehandler enthält).
Mein Anwendungsfall ist etwas zu haben, etwa so:
function asyncActionDispatcher(values) {
return (dispatch, getState) => {
// I'm using getState, which is not accessible in handleSubmit()
// But I'd also like to be able to set errors on the form fields and/or the
// form.
};
}
function handleSubmit(values, dispatch) {
dispatch(
asyncActionDispatcher(values)
);
}
ich kein SubmissionError
in asyncActionDispatcher()
werfen kann, weil sie von redux
und nicht redux-form
genannt wird.
Hat redux-form
eine andere API, um Fehler in Feldern/Formular zu setzen?
'validate' und' asyncValidate' scheinen immernoch die selbe Caller/Callee-Kopplung zu erfordern, wie ich bereits erwähnt habe, und bieten Ihnen weder 'getState()', um immer die neuesten Statuswerte zu erhalten. – pleasedesktop
Ich habe die Antwort aktualisiert, um vielleicht auf Ihre speziellen Bedürfnisse zu antworten. Wenn dies nicht der Fall ist, müssen Sie Ihre Frage bearbeiten, um deutlicher zu sehen, was Sie eigentlich erreichen möchten. – jakee
Ihre aktualisierte Antwort löst tatsächlich das Problem, den Zugriff auf 'getState()' zu gewähren und Formular-/Feldfehler zu setzen. Beide Antworten sind jetzt ein wenig unterschiedliche Mittel zum selben Zweck, aber ich gebe dir die Antwort, weil deine den "dispatch()" Rückgabewert schön nutzt. – pleasedesktop