Cloud Firestore Lite वेब SDK

Firestore, डेटाबेस का एक बेहतरीन समाधान है. इसे ज़रूरत के हिसाब से बढ़ाया जा सकता है. इससे वेब क्लाइंट पर डेटा को सिंक किया जा सकता है.

कई ऐप्लिकेशन के लिए, Firestore की मैनेज की गई ऑफ़लाइन सहायता की सुविधा खास तौर पर अहम है. इसकी मदद से, ऐसे रिस्पॉन्सिव ऐप्लिकेशन बनाए जा सकते हैं जो नेटवर्क के इंतज़ार के समय या इंटरनेट कनेक्टिविटी की परवाह किए बिना काम करते हैं. हालांकि, कई सुविधाओं वाले SDK टूल का साइज़ बड़ा होता है. Firebase उन ऐप्लिकेशन के लिए क्या ऑफ़र करता है जिन्हें सिर्फ़ बनाने, पढ़ने, अपडेट करने, और मिटाने जैसी बुनियादी कार्रवाइयां करनी होती हैं और जिन्हें मैनेज की गई ऑफ़लाइन सहायता की ज़रूरत नहीं होती?

समाधान: Firestore Lite

Firestore Lite, एक हल्का और स्टैंडअलोन REST-only Firestore SDK टूल है. यह सामान्य वेब SDK टूल के साइज़ के मुकाबले बहुत कम साइज़ में, एक दस्तावेज़ को फ़ेच करने, क्वेरी को लागू करने, और दस्तावेज़ को अपडेट करने की सुविधा देता है. Firestore Lite में इंतज़ार का समय कम करने, ऑफ़लाइन कैश मेमोरी में डेटा सेव करने, क्वेरी फिर से शुरू करने, और स्नैपशॉट लिसनर की सुविधा नहीं होती. हालांकि, कुछ खास मामलों में, लाइब्रेरी का साइज़ और स्टार्टअप का समय कम होने से, यह एक बेहतरीन विकल्प बन जाता है.

Firestore Lite इंपोर्ट करना

Firestore Lite, मॉड्यूलर एसडीके के हिस्से के तौर पर npm के ज़रिए उपलब्ध है. इसलिए, यह पूरी तरह से मॉड्यूलर और ट्री-शेकेबल है.

इंपोर्ट करने के लिए, इस स्टाइल का इस्तेमाल किया जा सकता है.

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

Firestore Lite में एपीआई की ये सुविधाएं काम नहीं करतीं

साइज़ और स्पीड के लिए, Firestore Lite में स्टैंडर्ड Firestore एसडीके की ये सुविधाएं शामिल नहीं हैं:

  • DocumentSnapshot इवेंट हैंडलर. onSnapshot तरीका और DocumentChange, SnapshotListenerOptions, SnapshotMetadata, SnapshotOptions, और Unsubscribe ऑब्जेक्ट शामिल नहीं हैं.
  • पर्सिस्टेंस हेल्पर. इसमें enableIndexedDBPersistence, enableMultiTabIndexedDbPersistence, और clearIndexedDbPersistence तरीके शामिल नहीं हैं.
  • Firestore बंडल. loadBundle तरीका और इससे जुड़े तरीके, और LoadBundleTask और LoadBundleTaskProgress ऑब्जेक्ट शामिल नहीं हैं.

दस्तावेज़ फ़ेच करना, क्वेरी करना, और अपडेट करना

Firestore Lite को इंपोर्ट करने के बाद, सभी जाने-पहचाने एपीआई को कॉल किया जा सकता है और उन्हें अपडेट किया जा सकता है. डेटा जोड़ने और डेटा पाने के सभी इस्तेमाल के उदाहरण लागू होते हैं.

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 का इस्तेमाल कब करना चाहिए

यह तय करना मुश्किल हो सकता है कि स्टैंडर्ड Firestore SDK टूल की ऑफ़लाइन परसिस्टेंस और कैश मेमोरी में सेव करने की सुविधाओं को कब बंद करना है. Firestore Lite का इस्तेमाल करने से पहले, आपको इन सुविधाओं के बारे में जानकारी होनी चाहिए. आम तौर पर, Firestore Lite का इस्तेमाल करना है या नहीं, यह तय करते समय इन बातों का ध्यान रखें:

  • ऑनलाइन स्टेटस - Firestore Lite उन ऐप्लिकेशन के लिए अच्छा है जिन्हें लाइव अपडेट की ज़रूरत नहीं होती और जिनमें कनेक्टिविटी होती है.
  • साइज़ से जुड़ी पाबंदियां - अगर आपको JavaScript बंडल का कुल साइज़ कम करना है, तो Firestore Lite का इस्तेमाल करें.