为了账号安全,请及时绑定邮箱和手机立即绑定

从集合 firebase firestore 中的所有文档中获取数据

从集合 firebase firestore 中的所有文档中获取数据

侃侃尔雅 2023-04-27 15:17:05
我需要获取 firestore 中一个集合的所有文档的数据。但在我的 forEach 中,我只得到第一个文件,我有两个。他打印了两次控制台,但在我的 setPoints 状态下,他只打印了第一个我做错了什么??const db = firestore();        await db          .collection('Providers')          .get()          .then(snapshot => {            if (snapshot.empty) {              console.log('nao tem');              return;            }            snapshot.docs.forEach(item => {              console.log('item', item.data());              setPoints([                ...points,                {                  id: item.id,                  latitude: item.data().address.latitude,                  longitude: item.data().address.longitude,                },              ]);            });
查看完整描述

1 回答

?
回首忆惘然

TA贡献1847条经验 获得超11个赞

我没有立即看到您的代码出了什么问题。但这似乎更加简洁和惯用,因此值得一试:


const db = firestore();


await db

  .collection('Providers')

  .get()

  .then(snapshot => {

    if (snapshot.empty) {

      return;

    }


    let points = snapshot.docs.map(item => {

        return {

          id: item.id,

          latitude: item.data().address.latitude,

          longitude: item.data().address.longitude,

        },

      ]);

    });


    setPoints(points);

  })


查看完整回答
反对 回复 2023-04-27
  • 1 回答
  • 0 关注
  • 104 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信