【问题标题】:How to get data from firebase array?如何从firebase数组中获取数据?
【发布时间】:2021-04-21 12:15:26
【问题描述】:

我试图弄清楚如何从 firebase 集合中获取数据。 这是我的代码

String myID = FirebaseAuth.instance.currentUser.uid;
    var idofotheruser = await FirebaseFirestore.instance
        .collection('videos')
        .get();

 idofotheruser.docs.forEach((element) {
      listOfIds.add(element.id);
    });

所以我得到了 currentuserid 以及每个视频 id。现在我想要我的 id 在 likes 数组中的所有文档视频。

这是我的数据库的外观

在 likes 数组中有用户 ID,我想要我的用户 ID 所在的每个视频。我喜欢的每一个。如果您需要更多信息,请发表评论

【问题讨论】:

    标签: firebase flutter dart google-cloud-firestore


    【解决方案1】:
    String myID = FirebaseAuth.instance.currentUser.uid;
        var idofotheruser = await FirebaseFirestore.instance
            .collection('videos')
            .where('likes' arrayContains: myID )
    //.get or .snapshot
            .get();
    
     idofotheruser.docs.forEach((element) {
          listOfIds.add(element.id);
        });
    

    如果有帮助请标记

    【讨论】:

    • 我实际上需要获取的数据不是字符串,而是Documetnsnapshot
    • 我不明白你在说什么...解释得更好
    • 首先你使用一个字符串列表我需要文档快照列表。然后你会得到所有的赞,但我只需要得到这些视频,其中 like 数组包含我的 id
    • 好的,我明白你在说什么......你想获取当前用户 id 为 id 的文档吗?
    • 查看我上传的图片。 meinprofilsettings 如果每个用户都有所有 id。例如 Fp3un... 等等有是一个用户。这个用户也喜欢视频 1037....等等,我想得到这个视频。甚至不是当前用户喜欢的每个视频。当前用户是 String myID = FirebaseAuth.instance.currentUser.uid;希望这能让它更清楚一点
    【解决方案2】:
     //define,=>    data : []   ,<= before onInit().
    
    
    `async getSubCollections(){
     const idForOtherUser = await this.firestore.collection("videos")
    .valueChanges();
     snapshot.subscribe(val=> this.data.push(val));
      console.log(this.data);
      }`
    

    在component.html中,

    <div *ngFor ="let value of data">
     {{value}}
    </div>
    

    【讨论】:

    • 兄弟我用颤振你告诉我的内容???????
    猜你喜欢
    • 2019-03-10
    • 1970-01-01
    • 1970-01-01
    • 2016-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多