DocumentSnapshot class

DocumentSnapshot 包含從 Firestore 資料庫中文件讀取的資料。可使用 .data().get(<field>) 擷取資料以取得特定欄位。

如果 DocumentSnapshot 指向現有的文件,則任何資料存取均會傳回「未定義」。您可以使用 exists() 方法明確驗證文件是否存在。

簽名:

export declare class DocumentSnapshot<AppModelType = DocumentData, DbModelType extends DocumentData = DocumentData> 

建構函式

建構函式 修飾符 說明
(建構函式)() 建構 DocumentSnapshot 類別的新例項

屬性

屬性 修飾符 類型 說明
id 字串 提供文件 ID 的 DocumentSnapshot 屬性。
中繼資料 SnapshotMetadata DocumentSnapshot 的相關中繼資料,包括來源和本機修改資訊。
參考資料 DocumentReference<AppModelType、DundModelType> DocumentSnapshot 中文件的 DocumentReference

方法

方法 修飾符 說明
data(選項) 將文件中的所有欄位擷取為 Object。如果文件不存在,會傳回 undefined根據預設,serverTimestamp() 值尚未設為最終值,將以 null 傳回。您可以傳遞選項物件來覆寫此設定。
exists() 傳回資料是否存在。如果文件存在,則為「是」。
get(fieldPath、選項) 擷取 fieldPath 指定的欄位。如果文件或欄位不存在,會傳回 undefined根據預設,尚未設為最終值的 serverTimestamp() 將傳回 null。您可以傳遞選項物件來覆寫此設定。

DocumentSnapshot.(建構函式)

建構 DocumentSnapshot 類別的新例項

簽名:

protected constructor();

DocumentSnapshot.id

提供文件 ID 的 DocumentSnapshot 屬性。

簽名:

get id(): string;

DocumentSnapshot.metadata

DocumentSnapshot 的相關中繼資料,包括來源和本機修改資訊。

簽名:

readonly metadata: SnapshotMetadata;

DocumentSnapshot.ref

DocumentSnapshot 中所包含文件的 DocumentReference

簽名:

get ref(): DocumentReference<AppModelType, DbModelType>;

DocumentSnapshot.data()

將文件中的所有欄位擷取為 Object。如果文件不存在,則傳回 undefined

根據預設,尚未設為最終值的 serverTimestamp() 值將傳回 null。您可以傳遞選項物件來覆寫此設定。

簽名:

data(options?: SnapshotOptions): AppModelType | undefined;

參數

參數 類型 說明
選項 SnapshotOptions 選項物件,可設定從快照擷取資料的方式 (例如,在尚未設為最終值的伺服器時間戳記中指定行為)。

傳回:

AppModelType |未定義

Object 包含文件中的所有欄位;如果文件不存在,則為 undefined

DocumentSnapshot.exists()

傳回資料是否存在。如果文件存在,則為「是」。

簽名:

exists(): this is QueryDocumentSnapshot<AppModelType, DbModelType>;

傳回:

這是 QueryDocumentSnapshot<AppModelType, DBMModelType>

DocumentSnapshot.get()

擷取 fieldPath 指定的欄位。如果文件或欄位不存在,則傳回 undefined

根據預設,尚未設為最終值的 serverTimestamp() 將傳回 null。您可以傳遞選項物件來覆寫此設定。

簽名:

get(fieldPath: string | FieldPath, options?: SnapshotOptions): any;

參數

參數 類型 說明
欄位路徑 字串 |FieldPath 特定欄位的路徑 (例如「foo」或「foo.bar」)。
選項 SnapshotOptions 選項物件,可設定從快照擷取欄位的方式 (例如,尚未設為最終值的伺服器時間戳記所期望的行為)。

傳回:

不限

指定欄位位置中的資料;如果文件中沒有這類欄位,則顯示未定義的資料。