了解 2023 年 Google I/O 大会上介绍的 Firebase 亮点。了解详情

Cloud Firestore Lite Web SDK'sı

Firestore, verileri Web istemcileri arasında senkronize halde tutmak için iyi bir ölçeklenebilir veritabanı çözümüdür.

Birçok uygulama için, Firestore'un yönetilen çevrimdışı desteği özellikle önemlidir ve ağ gecikmesinden veya İnternet bağlantısından bağımsız olarak çalışan duyarlı uygulamalar oluşturmanıza olanak tanır. Ancak zengin özelliklere sahip SDK'ların bir boyut maliyeti vardır. Firebase, yalnızca temel oluşturma, okuma, güncelleme ve silme işlemlerini kullanması gereken ve yönetilen çevrimdışı desteğe ihtiyaç duymayan uygulamalar için ne sunuyor?

Çözüm: Firestore Lite

Firestore Lite, normal Web SDK boyutunun çok küçük bir kısmında tek belge getirme, sorgu yürütme ve belge güncellemelerini destekleyen hafif, bağımsız bir REST-only Firestore SDK'dır. Firestore Lite, gecikme telafisini, çevrimdışı önbelleğe almayı, sorguyu sürdürmeyi ve anlık görüntü dinleyicilerini içermez, ancak belirli kullanım durumları için, kitaplık boyutundaki ve başlatma süresindeki azalmalar büyük bir denge sağlar.

Firestore Lite'ı içe aktarın

Firestore Lite, modüler SDK'nın bir parçası olarak npm aracılığıyla kullanılabilir. Bu nedenle tamamen modüler ve ağaç sallanabilir.

Aşağıdaki içe aktarma stili desteklenir.

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

Firestore Lite tarafından desteklenmeyen API özellikleri

Firestore Lite, boyut ve hız açısından şu özellikleri standart Firestore SDK'dan çıkarır:

  • DocumentSnapshot olay işleyicileri . onSnapshot yöntemi ve DocumentChange , SnapshotListenerOptions , SnapshotMetadata , SnapshotOptions ve Unsubscribe nesneleri dahil değildir.
  • Kalıcılık yardımcıları . enableIndexedDBPersistence , enableMultiTabIndexedDbPersistence ve clearIndexedDbPersistence yöntemleri dahil değildir.
  • Firestore paketleri . loadBundle yöntemi ve ilgili yöntemler ile LoadBundleTask ve LoadBundleTaskProgress nesneleri dahil değildir.

Belge getirme, sorgulama ve güncellemeleri uygulama

Firestore Lite'ı içe aktardıktan sonra, tüm tanıdık API alma ve güncelleme çağrılarını yapabilirsiniz. Veri eklemek ve veri almak için kullanım durumlarının tümü geçerlidir.

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

Firestore Lite ne zaman kullanılır?

Standart Firestore SDK'nın çevrimdışı kalıcılık ve önbelleğe alma özelliklerinin ne zaman bırakılacağına karar vermek zor olabilir. Firestore Lite'ın daha düşük ek yükü için bunları takas etmeye karar vermeden önce bu özellikleri anlamalısınız. Genel olarak, Firestore Lite kullanıp kullanmamaya karar verirken şu faktörleri değerlendirin:

  • Çevrimiçi durum - Firestore Lite, canlı güncellemelere ihtiyaç duymayan ve bağlantıya sahip uygulamalar için iyidir.
  • Boyut kısıtlamaları - Genel JavaScript paket boyutunuzu azaltmak istiyorsanız Firestore Lite harikadır.