A QueryDocumentSnapshot contains data read from a document in your Firestore database as part of a query. The document is guaranteed to exist and its data can be extracted with .data() or .get(<field>) to get a specific field.

A QueryDocumentSnapshot offers the same API surface as a DocumentSnapshot. Since query results contain only existing documents, the exists property will always be true and data() will never return 'undefined'.

Type parameters

  • T

Index

Constructors

Properties

Methods

Constructors

Private constructor

Properties

exists

exists: boolean

Property of the DocumentSnapshot that signals whether or not the data exists. True if the document exists.

id

id: string

Property of the DocumentSnapshot that provides the document's ID.

metadata

Metadata about the DocumentSnapshot, including information about its source and local modifications.

ref

The DocumentReference for the document included in the DocumentSnapshot.

Methods

data

  • data ( options ? :  SnapshotOptions ) : T
  • Retrieves all fields in the document as an Object.

    By default, FieldValue.serverTimestamp() values that have not yet been set to their final value will be returned as null. You can override this by passing an options object.

    override

    Parameters

    • Optional options: SnapshotOptions

      An options object to configure how data is retrieved from the snapshot (e.g. the desired behavior for server timestamps that have not yet been set to their final value).

    Returns T

    An Object containing all fields in the document.

get

  • get ( fieldPath string | FieldPath ,  options ? :  SnapshotOptions ) : any
  • Retrieves the field specified by fieldPath. Returns undefined if the document or field doesn't exist.

    By default, a FieldValue.serverTimestamp() that has not yet been set to its final value will be returned as null. You can override this by passing an options object.

    Parameters

    • fieldPath: string | FieldPath

      The path (e.g. 'foo' or 'foo.bar') to a specific field.

    • Optional options: SnapshotOptions

      An options object to configure how the field is retrieved from the snapshot (e.g. the desired behavior for server timestamps that have not yet been set to their final value).

    Returns any

    The data at the specified field location or undefined if no such field exists in the document.

isEqual

  • isEqual ( other DocumentSnapshot < T > ) : boolean
  • Returns true if this DocumentSnapshot is equal to the provided one.

    Parameters

    Returns boolean

    true if this DocumentSnapshot is equal to the provided one.