Catch up on everthing we announced at this year's Firebase Summit. Learn more

Cloud Firestore Lite Web SDK

O Firestore é uma boa solução de banco de dados escalonável para manter os dados sincronizados entre clientes da web.

Para muitos aplicativos, o suporte offline gerenciado do Firestore é especialmente importante, permitindo que você crie aplicativos responsivos que funcionam independentemente da latência da rede ou da conectividade com a Internet. Mas SDKs ricos em recursos têm um custo enorme. O que o Firebase oferece para aplicativos que só precisam usar operações básicas de criação, leitura, atualização e exclusão e não precisam de suporte offline gerenciado?

Solução: Firestore Lite

O Firestore Lite é um Firestore SDK leve e autônomo, somente REST, que oferece suporte a buscas de documentos únicos, execução de consultas e atualizações de documentos, em uma fração do tamanho normal do Web SDK. O Firestore Lite omite a compensação de latência, cache offline, retomada de consulta e ouvintes de instantâneo, mas para casos de uso específicos, as reduções no tamanho da biblioteca e no tempo de inicialização são uma grande compensação.

Importar Firestore Lite

Firestore Lite está disponível através npm como parte do SDK modular . É, portanto, totalmente modular e que pode ser trocado por árvores.

O seguinte estilo de importação é compatível.

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

Recursos de API não suportados pelo Firestore Lite

Para tamanho e velocidade, o Firestore Lite omite estes recursos do SDK do Firestore padrão:

  • Manipuladores de eventos DocumentSnapshot. O onSnapshot método e DocumentChange , SnapshotListenerOptions , SnapshotMetadata , SnapshotOptions e Unsubscribe objetos não estão incluídos.
  • Ajudantes persistência. Os enableIndexedDBPersistence , enableMultiTabIndexedDbPersistence e clearIndexedDbPersistence métodos não estão incluídos.
  • Feixes firestore. O loadBundle método e métodos afins, e os LoadBundleTask e LoadBundleTaskProgress objectos não estão incluídos.

Implementar buscas, consultas e atualizações de documentos

Depois de importar o Firestore Lite, você pode fazer todas as chamadas de obtenção e atualização de API familiares. Os casos de uso para adicionar dados e obtenção de dados todos se aplicam.

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

Quando usar o Firestore Lite

Pode ser complicado decidir quando abandonar os recursos de persistência offline e cache do Firestore SDK padrão. Você deve compreender esses recursos antes de decidir trocá-los pela sobrecarga mais baixa do Firestore Lite. Em geral, pondere esses fatores ao decidir se deve usar o Firestore Lite:

  • Status online - Firestore Lite é bom para aplicativos que não precisa de atualizações ao vivo e têm conectividade.
  • Tamanho restrições - Firestore Lite é ótimo se você quiser reduzir o seu tamanho pacote global JavaScript.