如何在反应中通过在redux传奇中抛出错误来破坏生成器功能



我在redux saga 中有这个功能

function* CheckUserIsAuth() {
try {
const user = yield call(getCurrentUser);
console.log(user);
if (!user) throw new Error(null);
const data = yield call(createUserDocument, user);
const dataSnapshot = yield data.get();
yield put(emailSignInSucc({ id: dataSnapshot.id, ...dataSnapshot.data() }));
} catch (error) {
yield put(emailSignInError(error.message));
}
}

如果用户是null,我想打破尝试捕获错误

我试图使用上面的代码抛出错误,但它仍然转到emailSignInSucc,并将null作为字符串提供给我。

这意味着它完成了功能,不会破坏

检查user及其返回的内容。也许user是一个空对象,并且没有触发错误。

如果调用throw new Error (),则代码将继续在catch中运行

最新更新