Join us in person and online for Firebase Summit on October 18, 2022. Learn how Firebase can help you accelerate app development, release your app with confidence, and scale with ease. Register now

Cloud Firestore Lite Web SDK

Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.

Firestore là một giải pháp cơ sở dữ liệu có khả năng mở rộng tốt để giữ cho dữ liệu được đồng bộ trên các máy khách Web.

Đối với nhiều ứng dụng, hỗ trợ ngoại tuyến được quản lý của Firestore đặc biệt quan trọng, cho phép bạn tạo các ứng dụng đáp ứng hoạt động bất kể độ trễ mạng hoặc kết nối Internet. Tuy nhiên, các SDK giàu tính năng thường có chi phí lớn. Firebase cung cấp những gì cho các ứng dụng chỉ cần sử dụng các thao tác tạo, đọc, cập nhật và xóa cơ bản và không cần hỗ trợ ngoại tuyến được quản lý?

Giải pháp: Firestore Lite

Firestore Lite là một Firestore SDK độc lập, nhẹ, chỉ dành cho REST, hỗ trợ tìm nạp tài liệu đơn lẻ, thực thi truy vấn và cập nhật tài liệu, với một phần nhỏ so với kích thước Web SDK thông thường. Firestore Lite bỏ qua bù độ trễ, bộ nhớ đệm ngoại tuyến, tiếp tục truy vấn và trình nghe ảnh chụp nhanh, nhưng đối với các trường hợp sử dụng cụ thể, việc giảm kích thước thư viện và thời gian khởi động tạo ra sự cân bằng lớn.

Nhập Firestore Lite

Firestore Lite có sẵn qua npm như một phần của SDK mô-đun . Do đó, nó hoàn toàn có dạng mô-đun và có thể thay đổi dạng cây.

Kiểu nhập sau được hỗ trợ.

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

Các tính năng API không được Firestore Lite hỗ trợ

Đối với kích thước và tốc độ, Firestore Lite bỏ qua các tính năng này khỏi SDK Firestore tiêu chuẩn:

  • Trình xử lý sự kiện DocumentSnapshot . Phương thức onSnapshot và các đối tượng DocumentChange , SnapshotListenerOptions , SnapshotMetadata , SnapshotOptionsUnsubscribe không được bao gồm.
  • Người trợ giúp bền bỉ . Các phương thức enableIndexedDBPersistence , enableMultiTabIndexedDbPersistenceclearIndexedDbPersistence không được bao gồm.
  • Các bó Firestore . Phương thức loadBundle và các phương thức liên quan cũng như các đối tượng LoadBundleTaskLoadBundleTaskProgress không được bao gồm.

Triển khai tìm nạp, truy vấn và cập nhật tài liệu

Sau khi nhập Firestore Lite, bạn có thể thực hiện tất cả các lệnh gọi nhận và cập nhật API quen thuộc. Tất cả các trường hợp sử dụng để thêm dữ liệulấy dữ liệu đều được áp dụng.

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

Khi nào sử dụng Firestore Lite

Có thể rất khó để quyết định khi nào nên loại bỏ các tính năng lưu trữ và lưu trữ ngoại tuyến của SDK Firestore tiêu chuẩn. Bạn nên hiểu các tính năng này trước khi quyết định đổi chúng để lấy chi phí thấp hơn của Firestore Lite. Nói chung, hãy cân nhắc các yếu tố này khi quyết định có sử dụng Firestore Lite hay không:

  • Trạng thái trực tuyến - Firestore Lite phù hợp với các ứng dụng không cần cập nhật trực tiếp và có kết nối.
  • Hạn chế về kích thước - Firestore Lite rất tuyệt nếu bạn muốn giảm kích thước gói JavaScript tổng thể của mình.