Допустим, у меня есть сага, которая выглядит так:
export function* incrementAsync(action) {
try {
const res = yield call(Api.signin.create, action.payload);
yield put({
type: USER_SIGN_IN_FETCH_SUCCESS,
payload: res.data.auth
};
} catch (e) {
yield put({ type: USER_SIGN_IN_FETCH_ERROR_NETWORK });
}
}
Фек был успешным, но это не значит, что пользователь действительно вошел в систему:
res.data.auth.error
может быть правдой
Мой вопрос заключается в том, должен ли я делать такие вещи, как:
if (//user was succesfully logged in)
yield put(//user was successfully logged in)
else if //wrong username
yield put(//wrong username)
else if //wrong password
yield put(//wrong password)
Или я должен иметь только один для успеха и один для ошибки, и в редукторе проанализировать логику ипостроить хранилище относительно данных ответа?