Cloud Firestore Lite Web SDK'sı

Firestore, verileri Web istemcileri arasında senkronize 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; 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 neler sunuyor?

Çözüm: Firestore Lite

Firestore Lite, normal Web SDK boyutunun çok altında tek belge getirmeyi, sorgu yürütmeyi ve belge güncellemelerini destekleyen hafif, bağımsız, yalnızca REST'e özel bir Firestore SDK'sıdır. Firestore Lite, gecikme telafisini, çevrimdışı önbelleğe almayı, sorguyu sürdürmeyi ve anlık görüntü dinleyicilerini göz ardı eder, ancak belirli kullanım durumları için kitaplık boyutundaki ve başlatma süresindeki azalmalar büyük bir ödünleşim sağlar.

Firestore Lite'ı içe aktar

Firestore Lite, modüler SDK'nın bir parçası olarak npm aracılığıyla edinilebilir. Bu nedenle tamamen modülerdir ve ağaçla sarsı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 açısından şu özellikleri standart Firestore SDK'sından çı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 edilmez.

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 ekleme ve veri alma 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ılmalı?

Standart Firestore SDK'nın çevrimdışı kalıcılık ve önbelleğe alma özelliklerinden ne zaman vazgeçileceğine karar vermek zor olabilir. Firestore Lite'ın daha düşük maliyeti karşılığında bunları takas etmeye karar vermeden önce bu özellikleri anlamalısınız. Firestore Lite'ı kullanıp kullanmayacağınıza karar verirken genel olarak şu faktörleri değerlendirin:

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