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 का इस्तेमाल करें.