Firebase 在 FirebaseAuth 初始化时抛出错误

问题描述 投票:0回答:1

每当我初始化时,FirebaseAuth 总是会抛出错误

final uid = FirebaseAuth.instance.currentUser!.uid;

错误是

Null check operator used on a null value

所以我必须在下面的函数中使用它才能工作。

FirebaseFirestore.instance.collection("collectionPath") .doc(FirebaseAuth.instance.currentUser!.uid).snapshots();

我不想每次都写那么长的代码。 我可以做什么来解决这个问题?

flutter firebase google-cloud-firestore firebase-authentication
1个回答
0
投票

在代码行中

FirebaseAuth.instance.currentUser!.uid;

您正在使用!运算符告诉代码 uid 永远不会为空。 在您的情况下, currentUser 似乎为空,因为身份验证不成功。所以你需要这样检查

if(FirebaseAuth.instance.currentUser != null){
 FirebaseAuth.instance.currentUser!.uid;
}

FirebaseAuth.instance.currentUser?.uid ?? '' // if uid is String 

要了解有关 Null Safety 的更多信息,最好查看 Dart 文档

© www.soinside.com 2019 - 2024. All rights reserved.