Firebase Firestore将时间戳作为空对象返回

问题描述 投票:1回答:1
firebase.firestore().collection('items')

按预期返回所有字符串,但在timestamp创建的返回为空对象{}

{"created_at":{},"name":"item one","description":"item one desc"}

如何让它提供firebase控制台中db中显示的实际时间戳?

As it appears in firebase console

从上面的集合返回的结果存储为items,并显示在vue js的表中。

firebase vuejs2 google-cloud-firestore
1个回答
2
投票

Firebase Firestore Timestamp是一个对象,如果要显示它,则必须将其转换为js日期对象。你可以read more here in the public constructors section.

示例js:

firebase
    .firestore()
    .collection('items')
    .get()
    .then((querySnapshot) => {
      const data = [];
      querySnapshot.forEach((item) => {
        const { created_at, ...rest } = item.data();

        data.push({
          created_at: new Date(created_at.seconds * 1000), // or you can use moment - moment.unix(created_at.seconds)
          ...rest,
        });
      });

      console.log(data); // [{"created_at": "2019-04-10T15:25:04.000Z", "name": "item one", "description": "item one desc"}]
    });
© www.soinside.com 2019 - 2024. All rights reserved.