FIRDocumentSnapshot
@interface FIRDocumentSnapshot : NSObject
A DocumentSnapshot
contains data read from a document in your Firestore database. The data
can be extracted with the data
property or by using subscript syntax to access a specific
field.
For a DocumentSnapshot
that points to a non-existing document, any data access will return
nil
. You can use the exists
property to explicitly verify a documents existence.
-
True if the document exists.
Declaration
Objective-C
@property (nonatomic, readonly) BOOL exists;
-
A
DocumentReference
to the document location.Declaration
Objective-C
@property (nonatomic, strong, readonly) FIRDocumentReference *_Nonnull reference;
-
The ID of the document for which this
DocumentSnapshot
contains data.Declaration
Objective-C
@property (nonatomic, copy, readonly) NSString *_Nonnull documentID;
-
Metadata about this snapshot concerning its source and if it has local modifications.
Declaration
Objective-C
@property (nonatomic, strong, readonly) FIRSnapshotMetadata *_Nonnull metadata;
-
Retrieves all fields in the document as a
Dictionary
. Returnsnil
if the document doesn’t exist.Server-provided timestamps that have not yet been set to their final value will be returned as
NSNull
. You can use thedata(with:)
method to configure this behavior.Declaration
Objective-C
- (nullable NSDictionary<NSString *, id> *)data;
Return Value
A
Dictionary
containing all fields in the document ornil
if the document doesn’t exist. -
Retrieves all fields in the document as a
Dictionary
. Returnsnil
if the document doesn’t exist.Declaration
Objective-C
- (nullable NSDictionary<NSString *, id> *)dataWithServerTimestampBehavior: (FIRServerTimestampBehavior)serverTimestampBehavior;
Parameters
serverTimestampBehavior
Configures how server timestamps that have not yet been set to their final value are returned from the snapshot.
Return Value
A
Dictionary
containing all fields in the document ornil
if the document doesn’t exist. -
Retrieves a specific field from the document. Returns
nil
if the document or the field doesn’t exist.The timestamps that have not yet been set to their final value will be returned as
NSNull
. You can useget(_:serverTimestampBehavior:)
to configure this behavior.Declaration
Objective-C
- (nullable id)valueForField:(nonnull id)field;
Parameters
field
The field to retrieve.
Return Value
The value contained in the field or
nil
if the document or field doesn’t exist. -
Retrieves a specific field from the document. Returns
nil
if the document or the field doesn’t exist.The timestamps that have not yet been set to their final value will be returned as
NSNull
. You can useget(_:serverTimestampBehavior:)
to configure this behavior.Declaration
Objective-C
- (nullable id)valueForField:(nonnull id)field serverTimestampBehavior: (FIRServerTimestampBehavior)serverTimestampBehavior;
Parameters
field
The field to retrieve.
serverTimestampBehavior
Configures how server timestamps that have not yet been set to their final value are returned from the snapshot.
Return Value
The value contained in the field or
nil
if the document or field doesn’t exist. -
Retrieves a specific field from the document.
Declaration
Objective-C
- (nullable id)objectForKeyedSubscript:(nonnull id)key;
Parameters
key
The field to retrieve.
Return Value
The value contained in the field or
nil
if the document or field doesn’t exist.