【问题标题】:Firebase authentication error: Undefined name 'auth'Firebase 身份验证错误:未定义名称“身份验证”
【发布时间】:2019-07-10 11:08:20
【问题描述】:

我想通过使用每个用户的 UID 来访问我的 Firestore 数据库,如下所示:

return new StreamBuilder(
    stream: Firestore.instance.collection('users').document(uid).snapshots(),
    builder: (context, snapshot) {
      if (!snapshot.hasData) {
        return new Text("Loading");
      }
      var userDocument = snapshot.data;

对于获取 UID:

final FirebaseUser user = auth.currentUser().then((FirebaseUser user) {
  final userid = user.uid;
});

这个但我一直收到错误

Undefined name 'auth'.

【问题讨论】:

  • 你初始化auth变量了吗?
  • @George 如何做到这一点?
  • 查看我的回答,希望对您有所帮助。
  • 另外,我更改了您的答案的标题以添加错误而不是您想要实现的内容,这应该可以让其他人在未来更容易找到它。如果您不同意,请随时恢复编辑。

标签: flutter firebase-authentication google-cloud-firestore


【解决方案1】:

要在 Flutter 中使用 FirebaseAuth,您必须获得对此类实例的引用。每当您需要使用 Firebase 身份验证时,请将此行添加到您的小部件/文件的顶部:

import 'package:firebase_auth/firebase_auth.dart';

FirebaseAuth auth = FirebaseAuth.instance;

现在您可以使用 auth.currentUser().then(...) 之类的东西,就像您做得正确一样。

【讨论】:

    猜你喜欢
    • 2020-04-01
    • 2022-12-10
    • 2019-10-13
    • 2017-06-18
    • 1970-01-01
    • 1970-01-01
    • 2016-10-18
    • 2017-01-25
    相关资源
    最近更新 更多