当前位置: 首页 > 知识库问答 >
问题:

如何将ID从firestore获取到对象数组中?

王宏深
2023-03-14

在React/FireStore应用程序上工作,尝试将Id-s放回objects数组中。代码如下:

  function getEm() {
    setLoading(true);
    ref.onSnapshot((querySnapshot) => {
      const items = [];
      const ids = [];
      querySnapshot.forEach((doc) => {
        items.push(doc.data());
        ids.push(doc.id);
      });
      //unzipped
      setItems(items);
      setIds(ids);
      console.log(ids);
      console.log(items);
      //zipped
      const item = _.zipObject([(ids = [])], [(items = [])]);
      setItems(item);
      setLoading(false);
    });
  }

知道'_zipobject'行有什么问题吗?

共有1个答案

陈俊誉
2023-03-14

您可以在从查询快照获得id后立即将其添加到数据对象:

querySnapshot.forEach((doc) => {
   const newItem = {
    ...doc.data(),
    id: doc.id
   }
   items.push(newItem);
});

这将给出一个object数组,其中包含来自object的所有数据+id

 类似资料:
  • 问题内容: 有没有一种方法可以获取Objective-C对象的PyObjC代理对象,仅将其作为整数?没有扩展模块可以完成吗? 就我而言,我试图从返回值(使用wxMac和Cocoa)中获取一个Cocoa代理对象。 问题答案: 我确实找到的一种解决方案依赖于从创建一个对象: 用于打印的示例: 因为使用,所以有点讨厌。如果有我忽略的API函数或其他更巧妙的方法,我肯定会感兴趣。

  • 问题内容: 我有一个JSON文件,其中包含一些我想在AngularJS网站上访问的数据。现在,我要从数组中仅获取一个对象。因此,我想例如ID为1的商品。 数据如下所示: 我想使用AngularJS $ http功能加载数据,如下所示: 这正在工作。但是,现在如何从获取的数组中获取特定的数据对象(按ID)呢? 在此先感谢您的帮助。 马克·马克 问题答案: 唯一的方法就是遍历数组。显然,如果您确定结果

  • 问题内容: 我遇到一些与parse.com相关的问题,我想获取特定对象的数据…我已经使用以下代码来获取数据,但似乎已被贬值。 我使用以下代码来获取数据形式的objectId: 这里“ U8mCwTHOaC”是我的objectId,我想获取此objectId的行。谢谢。 问题答案: 如果要从用户表中获取数据。 如果要当前用户的行

  • 我想获得“field”:“images”,它有包含图像URL的字符串的ArrayList,然后将其存储在sliderDataArrayList中。 请给我建议一个更好的方法来绕过它或一个这个问题的答案谢谢!

  • 如何从对象获取数组?我试图进入空数组,这样我就可以验证它的空状态。 输出

  • 问题内容: 我有一个变异,返回新对象的ID。 返回后,我想重定向到有关新对象的详细信息页面。 如何使用react / relay从包含组件中的突变中获取响应字段? 例如,我的页面包含带有如下代码的突变: 应该是由突变创建的对象,但是我如何掌握它呢? 问题答案: 通常,我们会使用来配置突变的客户端,并从突变的服务器端返回一个新值,但是在这里,您在客户机上没有一个范围来添加新节点。要告诉Relay获取