Cloud Firestore Lite Web SDK

Firestore ist eine gute skalierbare Datenbanklösung, um Daten über Webclients hinweg zu synchronisieren.

Für viele Apps ist der verwaltete Offlinesupport von Firestore besonders wichtig. So können Sie responsive Apps entwickeln, die unabhängig von Netzwerklatenz oder Internetverbindung funktionieren. SDKs mit vielen Funktionen haben jedoch ihren Umfang. Was bietet Firebase für Apps, die nur grundlegende Vorgänge wie Erstellen, Lesen, Aktualisieren und Löschen benötigen und keinen verwalteten Offlinesupport benötigen?

Lösung: Firestore Lite

Firestore Lite ist ein einfaches, eigenständiges Firestore SDK, das das Abrufen einzelner Dokumente, das Ausführen von Abfragen und das Aktualisieren von Dokumenten zu einem Bruchteil der regulären Web SDK-Größe unterstützt. Firestore Lite bietet keine Latenzkompensation, kein Offline-Caching, keine Wiederaufnahme von Abfragen und keine Snapshot-Listener. Für bestimmte Anwendungsfälle ist die geringere Größe der Bibliothek und die kürzere Startzeit jedoch ein guter Kompromiss.

Firestore Lite importieren

Firestore Lite ist über npm als Teil des modularen SDK verfügbar. Er ist daher vollständig modular und baumerschütterbar.

Der folgende Importstil wird unterstützt.

import { initializeApp } from "firebase/app";
import {
   getFirestore,
   getDoc,
   updateDoc
} from 'firebase/firestore/lite';

Von Firestore Lite nicht unterstützte API-Features

In Bezug auf Größe und Geschwindigkeit fehlen in Firestore Lite die folgenden Features aus dem standardmäßigen Firestore SDK:

  • DocumentSnapshot-Ereignishandler Die onSnapshot-Methode und die Objekte DocumentChange, SnapshotListenerOptions, SnapshotMetadata, SnapshotOptions und Unsubscribe sind nicht enthalten.
  • Persistenz-Hilfsfunktionen Die Methoden enableIndexedDBPersistence, enableMultiTabIndexedDbPersistence und clearIndexedDbPersistence sind nicht enthalten.
  • Firestore-Sets: Die loadBundle-Methode und zugehörige Methoden sowie die LoadBundleTask- und LoadBundleTaskProgress-Objekte sind nicht enthalten.

Dokumentabrufe, ‑abfragen und ‑aktualisierungen implementieren

Nachdem Sie Firestore Lite importiert haben, können Sie alle bekannten API-Abruf- und Aktualisierungsaufrufe ausführen. Es gelten die Anwendungsfälle für das Hinzufügen von Daten und Abrufen von Daten.

import {
 getFirestore,
 getDoc,
 updateDoc,
 doc
} from '@firebase/firestore/lite';

const firestore = getFirestore(app);
const docRef = doc(firestore, 'collection/doc');
const docSnap = await getDoc(docRef);
await updateDoc(docRef, "field", 'value');

Wann wird Firestore Lite verwendet?

Es kann schwierig sein zu entscheiden, wann Sie die Offlinespeicherung und die Caching-Funktionen des Firestore SDKs nicht mehr verwenden möchten. Sie sollten sich mit diesen Funktionen vertraut machen, bevor Sie sich für den geringeren Overhead von Firestore Lite entscheiden. Im Allgemeinen sollten Sie bei der Entscheidung, ob Firestore Lite verwendet wird, die folgenden Faktoren abwägen:

  • Onlinestatus: Firestore Lite eignet sich für Apps, die keine Live-Updates benötigen und eine Internetverbindung haben.
  • Größeeinschränkungen: Firestore Lite eignet sich hervorragend, wenn Sie die Gesamtgröße Ihres JavaScript-Bundles reduzieren möchten.