小编Lap*_*son的帖子

如何检查 TypeScript 中的异常是否为 FirebaseError / FirebaseAuthError

我正在尝试在我们的服务器上使用 TypeScript 实现 Firebase 身份验证和用户创建。

我正在创建一个新用户,并将整个创建内容包装在一个 try-catch 块中。我试图捕获几个异常,其中之一是 Firebase 引发的异常。

问题是我无法检查异常是否是由 Firebase 引发的,或者是否是另一种类型的异常。

类似问题的其他答案建议检查异常是否是 FirebaseError 的实例:

let firebaseUser;
try {
    firebaseUser = await firebase.auth().createUser({
        email: email,
        password: password,
    });

    // Other code here
} catch (error) {
    if(error instanceof FirebaseError){
        // handle FirebaseError here
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是,当 createUser 函数中出现错误时,错误是 FirebaseAuthError 的实例,而不是 FirebaseError,因此此检查失败。

我尝试将其切换到 FirebaseAuthError 并导入 FirebaseAuthError,但收到一条错误消息:

包子路径“./lib/utils/error”未由 \node_modules\firebase-admin\package.json 中的“exports”定义

那么检查 FirebaseAuth 是否抛出捕获的异常的正确方法是什么?

javascript firebase typescript firebase-authentication

7
推荐指数
1
解决办法
1077
查看次数