如何通过云功能更新Firestore文档中的timeStamp字段?

时间:2019-10-11 12:31:57

标签: android google-cloud-firestore google-cloud-functions

我使用以下代码通过云功能更新Firestore文档中的timeStamp字段:

  exports.updateDateWhenPhotoAdded = functions.firestore
  .document('posts/{postId}')
  .onCreate((snap, context) =>
  {
      const userId = snap.data().userId;

      return db.collection('following').doc(`${userId}`).update({ latestPostTimeStamp: `${snap.data().timeStamp.toDate()}` });

  });

timeStamp字段的数据类型为timestamp。但是,执行完上述代码后,该字段会自动转换为字符串数据类型,并且timeStamp更新的格式不是默认的时间戳格式('MMMM dd,yyyy'at'HH:mm:ss a z' )。如何预防呢?

2 个答案:

答案 0 :(得分:2)

该字段在数据库中显示为字符串,因为您正在传递字符串。这就是反引号在JavaScript中的作用-构建一个字符串。

如果要将时间戳从一个文档复制到另一个文档,只需传递原始字段值而不将其转换为字符串即可。

return db.collection('following').doc(userId).update({
    latestPostTimeStamp: snap.data().timeStamp
});

答案 1 :(得分:0)

您可以使用此$.Chart.Name