【问题标题】:How get user id in flutter firestore如何在flutter firestore中获取用户ID
【发布时间】:2019-07-11 05:11:29
【问题描述】:

我是 Flutter 新手,我不知道如何在 Firestore 中的特定文档(userId)中写入。

我希望我的数据库是这样的: 用户(集合) |-> 用户ID |->姓名:里奇

这是我的尝试:

Future<FirebaseUser> user =FirebaseAuth.instance.currentUser();
DocumentReference ref =Firestore.instance.collection('users').document(user.uid);

请帮忙

【问题讨论】:

    标签: firebase flutter google-cloud-firestore


    【解决方案1】:

    您需要等待获取FirebaseUser,然后才能访问id。 我在下面创建了一个简单的函数来为您演示。

    Future<DocumentReference> getUserDoc() async {
      final FirebaseAuth _auth = FirebaseAuth.instance;
      final Firestore _firestore = Firestore.instance;
    
      FirebaseUser user = await _auth.currentUser();
      DocumentReference ref = _firestore.collection('users').document(user.uid);
      return ref;
    }
    

    【讨论】:

    • 非常感谢,它的工作。但我仍然无法在文档中添加数据。这是我的代码: return ref.setData(data);错误是 -> 返回类型 'Future' 不是 'Future',由方法 'getUserDoc'.dart(return_of_invalid_type) 定义。
    • 确定是另一个问题
    • 是的,然后尝试将其作为新问题发布,我们会尽力提供帮助
    • 如果我想向具有特定 id 的用户添加文档怎么办?我尝试做db.collection('users').document(uid).setData(dataToBeSet),但它不起作用,引发运行时异常。
    猜你喜欢
    • 2019-05-05
    • 2022-07-22
    • 2021-07-12
    • 2019-10-22
    • 2018-09-24
    • 1970-01-01
    • 2020-12-05
    • 2019-05-28
    • 1970-01-01
    相关资源
    最近更新 更多