Error: 'currentUser' isn't a function or method and can't be invoked

Error: 'currentUser' isn't a function or method and can't be invoked

我刚刚在 Flutter 应用程序中更新了 Google Firebase Auth,因为我遇到了一些 SDK 错误,但现在我得到了:

Error: 'currentUser' isn't a function or method and can't be invoked. User currentFirebaseUser = await FirebaseAuth.instance.currentUser();

我查看了迁移指南,了解到 currentUser() 现在是通过 currentUser 同步的 getter。但我不确定我现在应该如何更改我的代码来解决这个问题。

static void getCurrentUserInfo() async{

User currentFirebaseUser = await FirebaseAuth.instance.currentUser();
String userid = currentFirebaseUser.uid;

DatabaseReference userRef = FirebaseDatabase.instance.reference().child('users/$userid');
userRef.once().then((DataSnapshot snapshot){

  if(snapshot.value != null){

  }
});

}

它是这样完成的:

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
String userid = user.getUid();

您需要删除 await 并将 currentUser() 更改为 currentUser

所以

User currentFirebaseUser = await FirebaseAuth.instance.currentUser();

变成

User currentFirebaseUser = FirebaseAuth.instance.currentUser;

来源:Verify email link and sign in
让我知道这是否有效^_^