2017-02-10 4 views
0

Ich verwende formsy-react (für Client-Validierung). Es funktioniert perfekt für jetzt, aber ich muss Fehler übergeben, wenn etwas auf der Serverseite schlecht ist.Formsy React Validation (Serverantwort)

Ist es möglich, eine Antwort zu erhalten, wenn das Formular eingereicht wurde? Antwort vom Server erhalten?

Oder wie kann ich das ohne formsy erreichen? Ich bin neu in reagieren Danke für die Hilfe. Schätzen Sie es!

Antwort

0

Es ist sehr einfach Aufgabe mit Formsy-react. Sie können updateInputWithError Methode (Documents here) verwenden oder invalidateForm verwenden, die als Parameter von onValidSubmit übergeben wird.

Beispiel mit onValidSubmit:

const App = React.createClass({ 
    ... 
    submit(model, resetForm, invalidateForm) { 
    this.callServerAPI() 
     .then(...) 
     .catch((serverErrors) => { 
      // serverErrors should be 
      // { Name: 'Name is too long', Class: 'Class is not valid' } 
      invalidateForm(serverErrors); // Just call invalidateForm 
     }); 
    }, 
    render() { 
    return (
     <Formsy.Form ref="form" onValidSubmit={this.submit}> 
     <MyInput name="Name" title="Name" value={user.name} /> 
     <MyInput name="Class" title="Class" value={user.class} /> 
     <div className="buttons"> 
      <button type="submit">Submit</button> 
     </div> 
     </Formsy.Form> 
    ); 
    } 
});