2017-02-10 121 views
0

我使用formsy反應的(客戶端驗證)。它現在完美,但如果服務器端出現問題,我必須通過錯誤。Formsy反應驗證(服務器響應)

是否可以提交表單時採取應對?從服務器獲取響應?

或者我如何能實現,如果沒有formsy? 我是新的反應 感謝您的幫助。 欣賞它!

回答

0

這是很容易的事與Formsy-react。您可以使用updateInputWithError方法(Documents here)或使用invalidateForm,該方法作爲onValidSubmit的參數傳遞。

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> 
    ); 
    } 
});