Cloud Firestore Lite Web SDK'sı

Firestore, verileri web istemcileri arasında senkronize etmek 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. Böylece, ağ gecikmesinden veya internet bağlantısından bağımsız olarak çalışan duyarlı uygulamalar geliştirebilirsiniz. Ancak zengin özelliklere sahip SDK'ların belirli bir maliyeti vardır. Firebase yalnızca temel oluşturma, okuma, güncelleme ve silme işlemlerini kullanması gereken ve yönetilen çevrimdışı desteğe ihtiyacı olmayan uygulamalar için ne sunar?

Çözüm: Firestore Lite

Firestore Lite, normal Web SDK'sı boyutundan küçük bir parçayla tek belge getirme, sorgu yürütme ve belge güncellemelerini destekleyen hafif ve bağımsız bir REST SDK'sıdır. Firestore Lite gecikme dengelemesi, çevrimdışı önbelleğe alma, sorgu devam ettirme ve anlık görüntü dinleyicileri içermez ancak belirli kullanım alanlarında kitaplık boyutu ve başlatma süresindeki düşüş önemli bir denge sağlar.

Firestore Lite'ı içe aktar

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

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 için aşağıdaki özellikleri standart Firestore SDK'sından çıkarır:

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

Belge getirme, sorgu ve güncelleme uygulama

Firestore Lite'ı içe aktardıktan sonra, bildiğiniz tüm API'leri alabilir ve güncelleyebilirsiniz. Veri ekleme ve veri alma kullanım alanları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'sının çevrimdışı kalıcılık ve önbelleğe alma özelliklerini ne zaman bırakacağınıza karar vermek zor olabilir. Bu özellikleri, Firestore Lite'ın daha düşük ek yükü karşılığında kullanmaya karar vermeden önce anlamanız gerekir. Genel olarak Firestore Lite'ı kullanıp kullanmayacağınıza karar verirken aşağıdaki unsurları göz önünde bulundurun:

  • Online durum: Firestore Lite, canlı güncellemelere ihtiyaç duymayan ve bağlantısı olan uygulamalar için uygundur.
  • Boyut kısıtlamaları - Genel JavaScript paketinizin boyutunu küçültmek istiyorsanız Firestore Lite idealdir.