Cloud Firestore Lite Web SDK

Firestore to dobre, skalowalne rozwiązanie bazodanowe, które zapewnia synchronizację danych między klientami internetowymi.

W przypadku wielu aplikacji szczególnie ważna jest obsługa zarządzanego trybu offline Firestore, która umożliwia tworzenie responsywnych aplikacji, które działają niezależnie od opóźnień w sieci lub łączności z Internetem. Ale bogate w funkcje pakiety SDK mają swoją cenę. Co Firebase oferuje aplikacjom, które wymagają tylko podstawowych operacji tworzenia, odczytywania, aktualizowania i usuwania i nie potrzebują zarządzanej obsługi offline?

Rozwiązanie: Firestore Lite

Firestore Lite to lekki, samodzielny pakiet Firestore SDK działający tylko w trybie REST, który obsługuje pobieranie pojedynczych dokumentów, wykonywanie zapytań i aktualizacje dokumentów przy ułamku zwykłego rozmiaru internetowego pakietu SDK. Firestore Lite pomija kompensację opóźnień, buforowanie offline, wznawianie zapytań i detektory migawek, ale w szczególnych przypadkach użycia zmniejszenie rozmiaru biblioteki i czasu uruchamiania to świetny kompromis.

Importuj Firestore Lite

Firestore Lite jest dostępny za pośrednictwem npm jako część modułowego SDK . Dzięki temu jest w pełni modułowa i podatna na wstrząsy.

Obsługiwany jest następujący styl importu.

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

Funkcje API nieobsługiwane przez Firestore Lite

Ze względu na rozmiar i szybkość Firestore Lite pomija te funkcje ze standardowego pakietu Firestore SDK:

  • Obsługa zdarzeń DocumentSnapshot . Metoda onSnapshot i obiekty DocumentChange , SnapshotListenerOptions , SnapshotMetadata , SnapshotOptions i Unsubscribe nie są uwzględniane.
  • Pomocnicy wytrwałości . Metody enableIndexedDBPersistence , enableMultiTabIndexedDbPersistence i clearIndexedDbPersistence nie są uwzględnione.
  • Pakiety Firestore . Metoda loadBundle i metody pokrewne oraz obiekty LoadBundleTask i LoadBundleTaskProgress nie są uwzględnione.

Implementuj pobieranie dokumentów, zapytania i aktualizacje

Po zaimportowaniu Firestore Lite możesz pobierać i aktualizować wszystkie znane interfejsy API. Wszystkie przypadki użycia dodawania danych i pobierania danych mają zastosowanie.

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');

Kiedy używać Firestore Lite

Decyzja, kiedy zrezygnować ze standardowych funkcji utrwalania i buforowania w trybie offline pakietu Firestore SDK, może być trudna. Powinieneś zrozumieć te funkcje, zanim zdecydujesz się je wymienić na niższe koszty ogólne Firestore Lite. Ogólnie rzecz biorąc, przy podejmowaniu decyzji o użyciu Firestore Lite rozważ te czynniki:

  • Stan online — Firestore Lite jest dobry w przypadku aplikacji, które nie wymagają aktualizacji na żywo i mają łączność.
  • Ograniczenia rozmiaru — Firestore Lite jest świetnym rozwiązaniem, jeśli chcesz zmniejszyć ogólny rozmiar pakietu JavaScript.