【问题标题】:Why am I not able to get authenticated user id?为什么我无法获得经过身份验证的用户 ID?
【发布时间】:2020-10-25 13:57:26
【问题描述】:

我正在尝试获取当前登录用户,但无法获取它,这里有什么问题

String uid;
   FirebaseAuth auth = FirebaseAuth.instance;
Future returnuid() async {
    FirebaseUser user = await auth.currentUser();
     uid = user.uid;
     }
@override
  Widget build(BuildContext context) {
    returnuid();
     return StreamBuilder(
        stream: Firestore.instance.collection('UserData').document(uid).snapshots(),

我认为这里的问题是我不是在等待 returnuid() 但我该怎么做呢?

【问题讨论】:

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


    【解决方案1】:

    尝试以下方法:

     Stream<DocumentSnapshot> getData()async*{
         FirebaseUser user = await FirebaseAuth.instance.currentUser();
         yield* Firestore.instance.collection('UserData').document(user.uid).snapshots();
      }
    

    那么就在StreamBuilder中调用这个方法:

    @override
      Widget build(BuildContext context) {
         return StreamBuilder(
            stream:getData()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-01-17
      • 2020-11-15
      • 1970-01-01
      • 2021-01-30
      • 2014-10-13
      • 2015-06-15
      • 1970-01-01
      相关资源
      最近更新 更多