FirebaseFirestore class
The entry point for accessing a FirebaseFirestore.
You can get an instance by calling FirebaseFirestore.instance. The instance
can also be created with a secondary Firebase
app by calling
FirebaseFirestore.instanceFor, for example:
FirebaseApp secondaryApp = Firebase.app('SecondaryApp');
FirebaseFirestore firestore = FirebaseFirestore.instanceFor(app: secondaryApp);
- Inheritance
-
- Object
- PlatformInterface
- FirebasePluginPlatform
- FirebaseFirestore
Properties
- app ↔ FirebaseApp
-
The
FirebaseApp
for this current FirebaseFirestore instance.getter/setter pair - databaseId ↔ String
-
Firestore Database ID for this instance. Falls back to default database: "(default)"
getter/setter pair
- databaseURL ↔ String
-
Firestore Database ID for this instance. Falls back to default database: "(default)"
This is deprecated in favor of databaseId.
getter/setter pair
- hashCode → int
-
The hash code for this object.
no setteroverride
- pluginConstants → Map
-
Returns any plugin constants this plugin app instance has initialized.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- settings ↔ Settings
-
The current Settings for this FirebaseFirestore instance.
getter/setter pair
Methods
-
batch(
) → WriteBatch - Returns a WriteBatch, used for performing multiple writes as a single atomic operation.
-
clearPersistence(
) → Future< void> - Clears the persistent storage, including pending writes and cached documents.
-
collection(
String collectionPath) → CollectionReference< Map< String, dynamic> > - Gets a CollectionReference for the specified Firestore path.
-
collectionGroup(
String collectionPath) → Query< Map< String, dynamic> > - Gets a Query for the specified collection group.
-
disableNetwork(
) → Future< void> - Instructs FirebaseFirestore to disable the network for the instance.
-
doc(
String documentPath) → DocumentReference< Map< String, dynamic> > - Gets a DocumentReference for the specified Firestore path.
-
enableNetwork(
) → Future< void> - Enables the network for this instance. Any pending local-only writes will be written to the remote servers.
-
enablePersistence(
[PersistenceSettings? persistenceSettings]) → Future< void> -
Enable persistence of Firestore data for web-only. Use Settings.persistenceEnabled for non-web platforms.
If
enablePersistence()
is not called, it defaults to Memory cache. IfenablePersistence(const PersistenceSettings(synchronizeTabs: false))
is called, it persists data for a single browser tab. IfenablePersistence(const PersistenceSettings(synchronizeTabs: true))
is called, it persists data across multiple browser tabs. -
loadBundle(
Uint8List bundle) → LoadBundleTask -
namedQueryGet(
String name, {GetOptions options = const GetOptions()}) → Future< QuerySnapshot< Map< >String, dynamic> > -
Reads a QuerySnapshot if a namedQuery has been retrieved and passed as a
Buffer
to loadBundle(). To read from cache, pass GetOptions.source value as Source.cache. To read from the Firestore backend, use GetOptions.source as Source.server. -
namedQueryWithConverterGet<
T> (String name, {GetOptions options = const GetOptions(), required FromFirestore< T> fromFirestore, required ToFirestore<T> toFirestore}) → Future<QuerySnapshot< T> > - Performs a namedQueryGet and decode the result using Query.withConverter.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
persistentCacheIndexManager(
) → PersistentCacheIndexManager? -
runTransaction<
T> (TransactionHandler< T> transactionHandler, {Duration timeout = const Duration(seconds: 30), int maxAttempts = 5}) → Future<T> - Executes the given TransactionHandler and then attempts to commit the changes applied within an atomic transaction.
-
setIndexConfiguration(
{required List< Index> indexes, List<FieldOverrides> ? fieldOverrides}) → Future<void> - Configures indexing for local query execution. Any previous index configuration is overridden.
-
setIndexConfigurationFromJSON(
String json) → Future< void> - Configures indexing for local query execution. Any previous index configuration is overridden.
-
snapshotsInSync(
) → Stream< void> - Returns a Stream which is called each time all of the active listeners have been synchronized.
-
terminate(
) → Future< void> - Terminates this FirebaseFirestore instance.
-
toString(
) → String -
A string representation of this object.
override
-
useFirestoreEmulator(
String host, int port, {bool sslEnabled = false, bool automaticHostMapping = true}) → void - Changes this instance to point to a FirebaseFirestore emulator running locally.
-
waitForPendingWrites(
) → Future< void> - Waits until all currently pending writes for the active user have been acknowledged by the backend.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
override
Static Properties
- instance → FirebaseFirestore
-
Returns an instance using the default
FirebaseApp
.no setter
Static Methods
-
instanceFor(
{required FirebaseApp app, String? databaseURL, String? databaseId}) → FirebaseFirestore -
Returns an instance using a specified
FirebaseApp
. -
setLoggingEnabled(
bool enabled) → Future< void> - Globally enables / disables Cloud Firestore logging for the SDK.