Pakiet SDK Cloud Firestore Lite Web SDK

Firestore to dobre, skalowalne rozwiązanie do przechowywania danych, które umożliwia synchronizowanie danych między klientami internetowymi.

W przypadku wielu aplikacji szczególnie ważne jest zarządzane przez Firestore wsparcie offline, które pozwala tworzyć responsywne aplikacje działające niezależnie od opóźnienia sieci i połączenia z internetem. Jednak bogate w funkcje pakiety SDK mają duży rozmiar. Co Firebase oferuje aplikacjom, które muszą tylko wykonywać podstawowe operacje tworzenia, odczytu, aktualizacji i usuwania oraz nie potrzebują zarządzanego wsparcia offline?

Rozwiązanie: Firestore Lite

Firestore Lite to lekki, samodzielny pakiet SDK Firestore, który obsługuje pobieranie pojedynczych dokumentów, wykonywanie zapytań i aktualizowanie dokumentów przy ułamku rozmiaru zwykłego pakietu Web SDK. Firestore Lite pomija kompensację opóźnienia, buforowanie offline, wznawianie zapytań i odbiorniki migawek, ale w określonych przypadkach użycia zmniejszenie rozmiaru biblioteki i czasu uruchamiania stanowi świetny kompromis.

Importowanie Firestore Lite

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

Obsługiwany jest ten styl importowania.

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

Funkcje interfejsu API nieobsługiwane przez Firestore Lite

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

  • Moduły obsługi zdarzeń DocumentSnapshot. Nie są uwzględnione metoda onSnapshot ani obiekty DocumentChange, SnapshotListenerOptions, SnapshotMetadata, SnapshotOptions i Unsubscribe.
  • Narzędzia do utrwalania. Nie są uwzględnione metody enableIndexedDBPersistence, enableMultiTabIndexedDbPersistence i clearIndexedDbPersistence.
  • Pakiety Firestore. Nie są uwzględnione metoda loadBundle ani powiązane metody, a także obiekty LoadBundleTask i LoadBundleTaskProgress nie są uwzględnione.

Implementowanie pobierania, zapytań i aktualizacji dokumentów

Po zaimportowaniu Firestore Lite możesz wykonywać wszystkie znane wywołania interfejsu API get i update. Obowiązują wszystkie przypadki użycia związane z dodawaniem danych i pobieraniem 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

Trudno jest zdecydować, kiedy zrezygnować z funkcji utrwalania i buforowania offline standardowego pakietu SDK Firestore. Zanim zdecydujesz się na rezygnację z tych funkcji na rzecz mniejszego obciążenia Firestore Lite, zapoznaj się z nimi. Ogólnie rzecz biorąc, przy podejmowaniu decyzji o użyciu Firestore Lite należy wziąć pod uwagę te czynniki:

  • Stan online – Firestore Lite jest odpowiedni dla aplikacji, które nie wymagają aktualizacji na żywo i mają połączenie z internetem.
  • Ograniczenia rozmiaru – Firestore Lite jest idealny, jeśli chcesz zmniejszyć ogólny rozmiar pakietu JavaScript.