Angular / Firebase / Firestore - 如何导入 firebase 以使用 `serverTimestamp`

Angular / Firebase / Firestore - How to import firebase to use `serverTimestamp`

Angular - v13.1 Firebase - ^9.6.2

在旧版本的 firebase 中,可以将 firebase 导入 Angular 组件以利用 serverTimestamp 属性:

import firebase from 'firebase/app';
import 'firebase/firestore';
---
this.afs.doc(`${db_path}`).set({
 dateCreated: firebase.firestore.FieldValue.serverTimestamp(),
)};

但是,自从在新版本上,这种方法似乎不再有效。查看文档,我还没有(...还)发现任何建议将 firebase 导入组件以使用此值的替代方法。

是否有更好的方法利用时间戳类型设置为值?

好的,所以以下似乎有效。不确定它是否 100% 正确。

Model/Interface

import { FieldValue, serverTimestamp } from "firebase/firestore";

export interface Folder extends Base {
  created: typeof serverTimestamp | FieldValue | Date;
}

组件

import { serverTimestamp } from "firebase/firestore";

---

new(){
  this.afs.collection<Model>(`path`).add({
      created: serverTimestamp()
  })
}