これを正しく質問する方法はかなりわかりません。 (ごめんなさい)基本的には、Saga関数にエラーが発生したときにエラー文字列でエラーを私のコンポーネントの関数に呼び出したいと思っています。だから私はSnackbarを5秒間起動して、それを再び隠すことができます。ソースコンポーネントの反応サガコール関数
しかし私はこの関数を私のSaga関数からどのように正確に呼び出すことができるのか分かりません。現時点では、this.state.error
StateのエラーをStringとして返します。私はcomponentWillReceiveProps
を使用しようとしましたが、これは文字列が同じ場合に2回目の試行では機能しません。
xiproblemを避けるために、私が持っているコードを投稿します。私は2つのソリューションを参照してください
import { Types } from './Actions';
import CognitoService from './CognitoService';
function* register(action) {
try {
const result = yield call(CognitoService.register, action);
yield put({ type: Types.registrationSuccess, user: result.user });
} catch(error) {
yield put({ type: Types.registrationFail, error: error.message });
}
}
function* authSaga() {
yield takeLatest(Types.register, register);
}
export default authSaga;
遅く応答して申し訳ありません。私は今、redux形式を使ってこれらのエラーを処理するより良い方法を持っています。とにかく助けてくれてありがとう! – Skaronator