Pakiet SDK Cloud Firestore Lite Web

Firestore to dobre, skalowalne rozwiązanie bazodanowe umożliwiające synchronizację danych między klientami internetowymi.

W przypadku wielu aplikacji szczególnie ważna jest zarządzana obsługa offline Firestore, ponieważ pozwala tworzyć responsywne aplikacje, które działają niezależnie od opóźnienia sieci i łączności z Internetem. Jednak bogate w funkcje pakiety SDK mają swoją cenę. Co oferuje Firebase dla aplikacji, które wymagają jedynie podstawowych operacji tworzenia, odczytu, aktualizacji i usuwania i nie potrzebują zarządzanej obsługi w trybie offline?

Rozwiązanie: Firestore Lite

Firestore Lite to lekki, samodzielny pakiet SDK Firestore obsługujący tylko REST, który obsługuje pobieranie pojedynczych dokumentów, wykonywanie zapytań i aktualizacje dokumentów za ułamek zwykłego rozmiaru Web SDK. Firestore Lite pomija kompensację opóźnień, buforowanie offline, wznawianie zapytań i słuchacze migawek, ale w konkretnych przypadkach użycia zmniejszenie rozmiaru biblioteki i czasu uruchamiania stanowi świetny kompromis.

Zaimportuj Firestore Lite

Firestore Lite jest dostępny poprzez npm jako część modułowego SDK . Dzięki temu jest w pełni modułowy i można go stawiać na drzewach.

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 SDK Firestore:

  • Obsługa zdarzeń DocumentSnapshot . Metoda onSnapshot i 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 wykonywać wszystkie znane wywołania API i aktualizować je. Obowiązują wszystkie przypadki użycia dotyczące dodawania i pobierania danych .

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

Podjęcie decyzji, kiedy zrezygnować ze standardowych funkcji trwałości i buforowania w trybie offline pakietu Firestore SDK, może być trudne. Powinieneś poznać te funkcje, zanim zdecydujesz się je wymienić na niższe koszty Firestore Lite. Ogólnie rzecz biorąc, podejmując decyzję o korzystaniu z Firestore Lite, rozważ następujące czynniki:

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