0
以下はReactの私のサインアップ機能です。バックエンドから受け取ったエラーをどのようにレンダリングできますか?私はthis.setResponseをcatch部分に入れようとしました...それはうまくいきませんでした。私はcomponentWillReceivePropsがアップデートを処理するはずであることを理解していますが、これは親コンポーネントからではなく、サービスからのアップデートです。サーバからフォームエラーを受信する
エラーを印刷すると、エラーのある辞書が表示されますが、それらをフォームまたはレンダリングのフィールドに渡す方法はわかりません。
signup(evt) {
evt.preventDefault();
...
Auth.signup(dict)
.catch(function(err) {
alert("There's an error signing up");
console.log(err.response);
});
},
認証サービスは、このように定義されています
signup(dict) {
console.log(dict);
return this.handleAuth(when(request({
url: UserConstants.SIGNUP_URL,
method: 'POST',
type: 'json',
data: dict
})));
}
そして、私は次のようにフィールドにエラーを送信することを望んだ:
<UserNameField
ref="username"
responseErrors={this.responseErrors}
/>
これは私が試した最初のもので、うまくいかなかった。 Auth.signupはサービスからFormコンポーネントにインポートされます。これはおそらくcatch関数で "this"が未定義になっている理由です...しかし、Formコンポーネントにreshuflingするのが理にかなっています。 – Stefan
@Stefan es6の矢印機能を使用します。今ここで定義する必要があります。更新された答え。 –
これは、 "解析エラー:プロパティの割り当ては、パターンを破棄する際にのみ有効です"と表示されます。矢印機能について学ぶだけではなく、ステージ0をインストールして動作させ、また、バベル反応をプリセットして、すべての作業をブラウジング、ギャルプ、そしてそのものとする...私は他のコンポーネント/設定? – Stefan