假设用户想要注册或登录该帐户。但是,Firebase错误显示如下。如何使用带有typescript的try-catch语句向用户显示toast通知?
[FirebaseError: Firebase: Error (auth/email-already-in-use).]
这是我尝试过的代码:
try {
const credential = await signUpWithEmail(data.email, data.password);
if (credential.uid) {
toast.show({
title: 'Account created! 🎊',
status: 'success',
description: 'Welcome!.',
});
} else {
const auth = getAuth();
auth.signOut();
}
} catch (err) {
toast.show({
title: 'Cannot sign-up an account.',
status: 'error',
description: [CONDITIONAL ERROR MESSAGE FOR DISPLAYING TO THE USER],
});
}
编辑:添加代码
err
对象有一个code
属性,您可以在代码中签入该属性,还有一个message
属性,可以向用户显示。
因此:
...
} catch (err) {
toast.show({
title: 'Cannot sign-up an account.',
status: 'error',
description: err.message,
});
}
请参阅有关发送密码重置电子邮件的Firebase文档,其中包含访问这两个属性的示例。
另请参阅:
- 不同语言的Firebase错误消息
- firebase web API的所有身份验证/错误列表
- 如果身份验证不成功,Firebase身份验证是否返回错误代码