DocumentSnapshot class

DocumentSnapshot มีข้อมูลที่อ่านจากเอกสารในฐานข้อมูล Firestore ของคุณ สามารถดึงข้อมูลด้วย .data() หรือ .get(<field>) เพื่อรับฟิลด์เฉพาะ

สำหรับ DocumentSnapshot ที่ชี้ไปยังเอกสารที่ไม่มีอยู่ การเข้าถึงข้อมูลใดๆ จะส่งกลับค่า 'ไม่ได้กำหนด' คุณสามารถใช้เมธอด exists() เพื่อตรวจสอบการมีอยู่ของเอกสารได้อย่างชัดเจน

ลายเซ็น:

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

คอนสตรัคเตอร์

ตัวสร้าง ตัวดัดแปลง คำอธิบาย
(ตัวสร้าง)() สร้างอินสแตนซ์ใหม่ของคลาส DocumentSnapshot

คุณสมบัติ

คุณสมบัติ ตัวดัดแปลง พิมพ์ คำอธิบาย
รหัส เชือก คุณสมบัติของ DocumentSnapshot ที่ให้ ID ของเอกสาร
ข้อมูลเมตา SnapshotMetadata ข้อมูลเมตาเกี่ยวกับ DocumentSnapshot รวมถึงข้อมูลเกี่ยวกับแหล่งที่มาและการแก้ไขในเครื่อง
อ้างอิง เอกสารอ้างอิง <AppModelType, DbModelType> DocumentReference สำหรับเอกสารที่รวมอยู่ใน DocumentSnapshot

วิธีการ

วิธี ตัวดัดแปลง คำอธิบาย
ข้อมูล (ตัวเลือก) ดึงข้อมูลฟิลด์ทั้งหมดในเอกสารเป็น Object ส่งคืน undefined หากไม่มีเอกสารอยู่ ตามค่าเริ่มต้น ค่า serverTimestamp() ที่ยังไม่ได้ตั้งค่าเป็นค่าสุดท้ายจะถูกส่งกลับเป็น null คุณสามารถแทนที่สิ่งนี้ได้โดยส่งออบเจ็กต์ตัวเลือก
มีอยู่() ส่งคืนว่ามีข้อมูลอยู่หรือไม่ เป็นจริงหากมีเอกสารอยู่
รับ (fieldPath ตัวเลือก) ดึงข้อมูลฟิลด์ที่ระบุโดย fieldPath ส่งคืน undefined หากไม่มีเอกสารหรือฟิลด์ ตามค่าเริ่มต้น serverTimestamp() ที่ยังไม่ได้ตั้งค่าเป็นค่าสุดท้ายจะถูกส่งกลับเป็น null คุณสามารถแทนที่สิ่งนี้ได้โดยส่งออบเจ็กต์ตัวเลือก

DocumentSnapshot.(ตัวสร้าง)

สร้างอินสแตนซ์ใหม่ของคลาส DocumentSnapshot

ลายเซ็น:

protected constructor();

เอกสาร Snapshot.id

คุณสมบัติของ DocumentSnapshot ที่ให้ ID ของเอกสาร

ลายเซ็น:

get id(): string;

DocumentSnapshot.metadata

ข้อมูลเมตาเกี่ยวกับ DocumentSnapshot รวมถึงข้อมูลเกี่ยวกับแหล่งที่มาและการแก้ไขในท้องถิ่น

ลายเซ็น:

readonly metadata: SnapshotMetadata;

DocumentSnapshot.ref

DocumentReference สำหรับเอกสารที่รวมอยู่ใน DocumentSnapshot .

ลายเซ็น:

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

DocumentSnapshot.data()

ดึงข้อมูลฟิลด์ทั้งหมดในเอกสารเป็น Object . ส่งคืน undefined หากไม่มีเอกสารอยู่

ตามค่าเริ่มต้น ค่า serverTimestamp() ที่ยังไม่ได้ตั้งค่าเป็นค่าสุดท้ายจะถูกส่งกลับเป็น null . คุณสามารถแทนที่สิ่งนี้ได้โดยส่งออบเจ็กต์ตัวเลือก

ลายเซ็น:

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

พารามิเตอร์

พารามิเตอร์ พิมพ์ คำอธิบาย
ตัวเลือก ตัวเลือกภาพรวม ออบเจ็กต์ตัวเลือกในการกำหนดค่าวิธีการดึงข้อมูลจากสแน็ปช็อต (เช่น ลักษณะการทำงานที่ต้องการสำหรับการประทับเวลาของเซิร์ฟเวอร์ที่ยังไม่ได้ตั้งค่าเป็นค่าสุดท้าย)

ผลตอบแทน:

AppModelType | ไม่ได้กำหนด

Object ที่มีฟิลด์ทั้งหมดในเอกสารหรือ undefined หากไม่มีเอกสารอยู่

DocumentSnapshot.exists()

ส่งคืนว่ามีข้อมูลอยู่หรือไม่ เป็นจริงหากมีเอกสารอยู่

ลายเซ็น:

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

ผลตอบแทน:

นี่คือ QueryDocumentSnapshot <AppModelType, DbModelType>

DocumentSnapshot.get()

ดึงข้อมูลฟิลด์ที่ระบุโดย fieldPath . ส่งคืน undefined หากไม่มีเอกสารหรือฟิลด์

ตามค่าเริ่มต้น serverTimestamp() ที่ยังไม่ได้ตั้งค่าเป็นค่าสุดท้ายจะถูกส่งกลับเป็น null . คุณสามารถแทนที่สิ่งนี้ได้โดยส่งออบเจ็กต์ตัวเลือก

ลายเซ็น:

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

พารามิเตอร์

พารามิเตอร์ พิมพ์ คำอธิบาย
fieldPath สตริง | FieldPath เส้นทาง (เช่น 'foo' หรือ 'foo.bar') ไปยังช่องเฉพาะ
ตัวเลือก ตัวเลือกภาพรวม ออบเจ็กต์ตัวเลือกเพื่อกำหนดค่าวิธีการดึงข้อมูลฟิลด์จากสแน็ปช็อต (เช่น ลักษณะการทำงานที่ต้องการสำหรับการประทับเวลาของเซิร์ฟเวอร์ที่ยังไม่ได้ตั้งค่าเป็นค่าสุดท้าย)

ผลตอบแทน:

ใดๆ

ข้อมูลในตำแหน่งฟิลด์ที่ระบุหรือไม่ได้กำหนดหากไม่มีฟิลด์ดังกล่าวอยู่ในเอกสาร