【问题标题】:Error: 'currentUser' isn't a function or method and can't be invoked [duplicate]错误:“currentUser”不是函数或方法,无法调用[重复]
【发布时间】:2021-02-23 19:02:44
【问题描述】:

我刚刚在 Flutter 应用中更新了 Google Firebase 身份验证,因为我遇到了一些错误的 SDK 错误,但现在我得到了:

错误:“currentUser”不是函数或方法,无法调用。 用户 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){

  }
});

}

【问题讨论】:

  • 如果您想获取用户 ID,请尝试使用类似这样的用户 currentFirebaseUser = await FirebaseAuth.instance.currentUser.then(op => { const lk = op.uid; });跨度>

标签: firebase flutter firebase-authentication flutter-web


【解决方案1】:

这样做是这样的:

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

【讨论】:

    【解决方案2】:

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

    所以

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

    变成

    User currentFirebaseUser = FirebaseAuth.instance.currentUser;
    

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

    【讨论】:

    • 是的,它就像魅力一样工作,谢谢!!
    猜你喜欢
    • 2022-01-16
    • 1970-01-01
    • 2020-01-13
    • 2013-09-10
    • 2019-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多