2017-02-23 3 views
1

Ich verwende Redux-Form in Modal mit 'Validieren' & 'Cancel' Schaltflächen. Es gibt 3 verschiedene Formen, die 3 verschiedene Entitäten im Backend erstellen. Ich möchte 2/3 unabhängige json erstellen und versenden.Erstellen Sie mehrere Redux-Form auf der gleichen Seite und senden Sie mit der gleichen Schaltfläche

Ist es möglich, 3 differents Form innerhalb der gleichen Seite zu verwenden, und validieren Sie alles mit der gleichen Schaltfläche?

Danke für Hilfe.

Antwort

0

Ja, es ist möglich, 3 verschiedene Formulare mit einem einzigen Knopf zu senden. Sie müssen remote submit verwenden - siehe this example. In Ihrem Fall würden Sie 3 Formularnamen versenden, die Sie übermitteln möchten.

Beispiel:

function submitForms() { 
    dispatch(submit('FirstOne')) 
    dispatch(submit('secondOne')) 
} 

<Button type="button" onClick={ submitForms } /> 
+0

Danke. Ich habe es versucht, aber ich kann nicht mehr als ein Formular versenden. { Versand (einreichen ('firstone' ') Versand ((' secondeOne ') einreichen. }} />. Nur die der erste ist submit:/ – GreGGus

+1

@GreGGus Ich habe ein Beispiel hinzugefügt - ich nehme das vielleicht wegen der Tippfehler in Ihrem Kommentar (nicht sicher, ob Sie es kopiert haben). –

0

@Deividas,

Sie richtig waren, es funktioniert! Mein Fehler war, dass ich dem zweiten Formular einen Validierer hinzugefügt habe, sodass nur der erste wirklich erstellt wurde.

Es ist mir über die Validierung denken ...

function submitForms() { 
    dispatch(submit('FirstOne')) // isn't validate 
    dispatch(submit('secondOne')) // is validate 
    dispatch(submit('thirdOne')) // is validate 
} 

<Button type="button" onClick={ submitForms } /> 

Wie Sie sehen können, wenn die firstone Validierung nicht in Ordnung ist, wird es die zweite und die dritte Form ausgelöst werden, wenn ihre eigene Validierung in Ordnung ist.

Alle meine Form sind "verbunden", es ist wie Alle submit oder nichts.

Ist es möglich, 'Fehler' value oder valation innerhalb meiner sumbit-Funktion zuzugreifen und einige Bedingungen zu machen, um dieses Verhalten zu behandeln?

Wie auch immer, danke für Ihre Hilfe :)

Verwandte Themen