@firebase/firestore/lite

Hàm

Chức năng Mô tả
hàm(app, ...)
getFirestore(ứng dụng) Trả về thực thể Firestore mặc định hiện có và liên kết với FirebaseApp được cung cấp. Nếu không có thực thể nào tồn tại, hãy khởi chạy một phiên bản mới với chế độ cài đặt mặc định.
getFirestore(ứng dụng, DatabaseId) (BETA) Trả về thực thể Firestore hiện có liên kết với FirebaseApp được cung cấp. Nếu không có thực thể nào tồn tại, hãy khởi chạy một phiên bản mới với chế độ cài đặt mặc định.
khởi tạoFirestore(ứng dụng, chế độ cài đặt) Khởi chạy một thực thể mới của Cloud Firestore với các chế độ cài đặt được cung cấp. Chỉ có thể được gọi trước các hàm khác, bao gồm cả getFirestore(). Nếu chế độ cài đặt tuỳ chỉnh trống, thì hàm này tương đương với việc gọi getFirestore().
khởi tạoFirestore(ứng dụng, chế độ cài đặt, mã cơ sở dữ liệu) (BETA) Khởi chạy một thực thể mới của Cloud Firestore với các chế độ cài đặt được cung cấp. Chỉ có thể được gọi trước các hàm khác, bao gồm cả getFirestore(). Nếu chế độ cài đặt tuỳ chỉnh trống, thì hàm này tương đương với việc gọi getFirestore().
function(firestore, ...)
collection(kho Fire, đường dẫn, đường dẫn phân đoạn) Lấy một thực thể CollectionReference tham chiếu đến tập hợp tại đường dẫn tuyệt đối được chỉ định.
collectionGroup(firestore, collectionId) Tạo và trả về một thực thể Query mới bao gồm tất cả tài liệu trong cơ sở dữ liệu có trong một tập hợp hoặc bộ sưu tập con có collectionId cho trước.
connectFirestoreEmulator(firestore, máy chủ, cổng, các tuỳ chọn) Sửa đổi thực thể này để giao tiếp với trình mô phỏng Cloud Firestore.Lưu ý: Mã này phải được gọi trước khi dùng thực thể này để thực hiện bất kỳ thao tác nào.
doc(firestore, đường dẫn, pathSegment) Lấy một thực thể DocumentReference tham chiếu đến tài liệu tại đường dẫn tuyệt đối đã chỉ định.
runTransaction(firestore; updateFunction, các lựa chọn) Thực thi updateFunction đã cho và sau đó cố gắng xác nhận các thay đổi được áp dụng trong giao dịch. Nếu bất kỳ tài liệu nào được đọc trong giao dịch đã thay đổi, Cloud Firestore sẽ thử lại updateFunction. Nếu không thực hiện được sau 5 lần xác thực, thì giao dịch sẽ không thành công.Số lượt ghi tối đa được phép trong một giao dịch là 500.
terminate(firestore) Chấm dứt thực thể Firestore đã cung cấp.Sau khi gọi terminate(), bạn chỉ có thể sử dụng các hàm clearIndexedDbPersistence(). Mọi hàm khác sẽ gửi một FirestoreError. Việc chấm dứt sẽ không huỷ bất kỳ lệnh ghi đang chờ xử lý nào và mọi lời hứa đang chờ phản hồi từ máy chủ sẽ không được giải quyết.Để khởi động lại sau khi chấm dứt, hãy tạo một thực thể mới của Firestore bằng getFirestore().Lưu ý: Trong các trường hợp bình thường, bạn không cần gọi terminate(). Hàm này chỉ hữu ích khi bạn muốn buộc thực thể này giải phóng tất cả tài nguyên của mình hoặc kết hợp với clearIndexedDbPersistence() để đảm bảo rằng tất cả trạng thái cục bộ đều bị huỷ giữa các lần chạy kiểm thử.
writeBatch(firestore) Tạo một lô ghi, dùng để thực hiện nhiều lần ghi dưới dạng một thao tác ở cấp nguyên tử. Số lượt ghi tối đa được phép trong một WriteBatch là 500.Kết quả của các lượt ghi này sẽ chỉ được phản ánh trong các lần đọc tài liệu diễn ra sau khi lời hứa được trả về được phân giải. Nếu ứng dụng không có kết nối mạng, thì quá trình ghi sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.
hàm()
count() Tạo một đối tượng AggregateField có thể dùng để tính số lượng tài liệu trong tập hợp kết quả của một truy vấn.
deleteField() Trả về một người gửi để sử dụng với updateDoc() hoặc setDoc() với {merge: true} nhằm đánh dấu một trường cần xoá.
documentId() Trả về một giám sát đặc biệt FieldPath để tham chiếu đến mã nhận dạng của một tài liệu. Có thể dùng tên này trong các truy vấn để sắp xếp hoặc lọc theo mã tài liệu.
getFirestore() Trả về phiên bản Firestore mặc định hiện có được liên kết với FirebaseApp mặc định. Nếu không có thực thể nào tồn tại, hãy khởi chạy một phiên bản mới với chế độ cài đặt mặc định.
serverTimestamp() Trả về một người gửi dùng với setDoc() hoặc updateDoc() để đưa dấu thời gian do máy chủ tạo vào dữ liệu đã ghi.
hàm(databaseId, ...)
getFirestore(databaseId) (BETA) Trả về thực thể Firestore hiện có được liên kết với FirebaseApp mặc định. Nếu không có thực thể nào tồn tại, hãy khởi chạy một phiên bản mới với chế độ cài đặt mặc định.
hàm(phần tử, ...)
mảngRemove(phần tử) Trả về một giá trị đặc biệt có thể dùng với setDoc() hoặc yêu cầu máy chủ xoá các phần tử đã cho khỏi bất kỳ giá trị mảng nào đã tồn tại trên máy chủ. Tất cả các bản sao của từng phần tử được chỉ định sẽ bị xóa khỏi mảng. Nếu trường đang được sửa đổi không phải là một mảng, thì trường đó sẽ bị ghi đè bằng một mảng trống.
mảngUnion(phần tử) Trả về một giá trị đặc biệt có thể dùng với setDoc() hoặc updateDoc(). Giá trị này yêu cầu máy chủ hợp nhất các phần tử đã cho với bất kỳ giá trị mảng nào đã tồn tại trên máy chủ. Mỗi phần tử được chỉ định chưa tồn tại trong mảng sẽ được thêm vào cuối. Nếu trường đang được sửa đổi không phải là một mảng thì trường đó sẽ bị ghi đè bằng một mảng chứa chính xác các phần tử được chỉ định.
hàm(trường, ...)
trung bình(trường) Tạo một đối tượng AggregateField có thể dùng để tính giá trị trung bình của một trường đã chỉ định trên một dải tài liệu trong tập hợp kết quả của một truy vấn.
sum(field) Tạo một đối tượng AggregateField có thể dùng để tính tổng của một trường chỉ định trên một dải tài liệu trong tập hợp kết quả của một truy vấn.
function(fieldPath, ...)
orderBy(fieldPath; directionStr) Tạo một QueryOrderByConstraint để sắp xếp kết quả truy vấn theo trường được chỉ định, không bắt buộc theo thứ tự giảm dần thay vì tăng dần.Lưu ý: Những tài liệu không chứa trường được chỉ định sẽ không xuất hiện trong kết quả truy vấn.
where(fieldPath; opStr; giá trị) Tạo một QueryFieldFilterConstraint để thực thi các tài liệu phải chứa trường được chỉ định và giá trị phải đáp ứng quy tắc ràng buộc mối quan hệ đã cung cấp.
hàm(fieldValues, ...)
endAt(fieldValues) Tạo một QueryEndAtConstraint để sửa đổi kết quả được đặt thành kết thúc tại các trường đã cung cấp tương ứng với thứ tự của truy vấn. Thứ tự của các giá trị trường phải khớp với thứ tự của thứ tự theo mệnh đề của truy vấn.
endBefore(fieldValues) Tạo một QueryEndAtConstraint để sửa đổi tập hợp kết quả thành kết thúc trước khi các trường được cung cấp tương ứng với thứ tự của truy vấn. Thứ tự của các giá trị trường phải khớp với thứ tự của thứ tự theo mệnh đề của truy vấn.
startSau(fieldValues) Tạo một QueryStartAtConstraint để sửa đổi tập hợp kết quả để bắt đầu sau các trường đã cung cấp tương ứng với thứ tự của truy vấn. Thứ tự của các giá trị trường phải khớp với thứ tự của thứ tự theo mệnh đề của truy vấn.
startAt(fieldValues) Tạo một QueryStartAtConstraint để sửa đổi tập hợp kết quả để bắt đầu tại các trường đã cung cấp tương ứng với thứ tự của truy vấn. Thứ tự của các giá trị trường phải khớp với thứ tự của thứ tự theo mệnh đề của truy vấn.
hàm(left, ...)
aggregateFieldEqual(trái, phải) So sánh hai thực thể "AggregateField" để xét đẳng thức.
aggregateQuerySnapshotEqual(trái, phải) So sánh 2 thực thể AggregateQuerySnapshot để xem có đẳng thức.Hai thực thể AggregateQuerySnapshot được coi là "bằng nhau" nếu chúng có các truy vấn cơ bản so sánh bằng nhau và cùng dữ liệu.
queryEqual(trái, phải) Trả về true nếu các truy vấn đã cho trỏ đến cùng một tập hợp và áp dụng các điều kiện ràng buộc tương tự.
refEqual(trái; phải) Trả về true nếu các giá trị tham chiếu đã cho bằng nhau.
snapshotEqual(trái, phải) Trả về true nếu các ảnh chụp nhanh được cung cấp bằng nhau.
hàm(giới hạn, ...)
giới hạn(giới hạn) Tạo một QueryLimitConstraint chỉ trả về những tài liệu phù hợp đầu tiên.
limitToLast(giới hạn) Tạo một QueryLimitConstraint chỉ trả về những tài liệu khớp gần đây nhất.Bạn phải chỉ định ít nhất một mệnh đề orderBy cho các truy vấn limitToLast, nếu không, một ngoại lệ sẽ được gửi trong quá trình thực thi.
hàm(loglevel, ...)
setLogLevel(logLevel) Đặt độ chi tiết của nhật ký Cloud Firestore (gỡ lỗi, lỗi hoặc im lặng).
hàm(n, ...)
increment(n) Trả về một giá trị đặc biệt có thể dùng với setDoc() hoặc updateDoc() để yêu cầu máy chủ tăng giá trị hiện tại của trường theo giá trị đã cho.Nếu toán hạng hoặc giá trị của trường hiện tại sử dụng độ chính xác của dấu phẩy động, thì mọi số học đều tuân theo ngữ nghĩa của IEEE 754. Nếu cả hai giá trị đều là số nguyên, thì các giá trị nằm ngoài phạm vi số an toàn của JavaScript (Number.MIN_SAFE_INTEGER đến Number.MAX_SAFE_INTEGER) cũng bị mất độ chính xác. Hơn nữa, sau khi được phần phụ trợ của Firestore xử lý, tất cả các thao tác với số nguyên sẽ được giới hạn trong khoảng từ -2^63 đến 2^63-1.Nếu giá trị trường hiện tại không thuộc loại number hoặc nếu trường chưa tồn tại, thì phép biến đổi sẽ đặt trường này thành giá trị đã cho.
hàm(truy vấn, ...)
getAggregate(query, SyntheticSpec) Tính toán các dữ liệu tổng hợp được chỉ định trên tài liệu trong tập hợp kết quả của truy vấn đã cho mà không thực sự tải tài liệu xuống.Việc sử dụng hàm này để thực hiện tổng hợp là hiệu quả vì chỉ có giá trị tổng hợp cuối cùng chứ không phải tài liệu' đã được tải xuống. Hàm này có thể tổng hợp tài liệu trong trường hợp tập hợp kết quả quá lớn để tải xuống hoàn toàn (hàng nghìn tài liệu).
getCount(query) Tính toán số lượng tài liệu trong tập hợp kết quả của truy vấn đã cho mà không thực sự tải tài liệu xuống.Việc sử dụng hàm này để đếm tài liệu hiệu quả vì chỉ số lượng cuối cùng chứ không phải tài liệu' đã được tải xuống. Hàm này có thể đếm tài liệu trong trường hợp tập hợp kết quả quá lớn để tải xuống toàn bộ (hàng nghìn tài liệu).
getDocs(truy vấn) Thực thi truy vấn và trả về kết quả dưới dạng QuerySnapshot.Tất cả truy vấn đều được máy chủ thực thi trực tiếp, ngay cả khi truy vấn đã được thực thi trước đó. Nội dung sửa đổi gần đây chỉ được phản ánh trong kết quả đã truy xuất nếu chương trình phụ trợ đã áp dụng các nội dung sửa đổi đó. Nếu ứng dụng không có kết nối mạng, thì thao tác sẽ không thành công. Để xem kết quả được lưu vào bộ nhớ đệm trước đó và các nội dung sửa đổi cục bộ, hãy sử dụng SDK Firestore đầy đủ.
query(query, compositeFilter, queryConstraints) Tạo một thực thể Truy vấn bất biến mới và được mở rộng để bao gồm cả các điều kiện ràng buộc khác đối với truy vấn.
query(query, queryConstraints) Tạo một thực thể Truy vấn bất biến mới và được mở rộng để bao gồm cả các điều kiện ràng buộc khác đối với truy vấn.
hàm(queryConstraints, ...)
and(queryConstraints) Tạo một QueryCompositeFilterConstraint mới là sự kết hợp của các giới hạn bộ lọc nhất định. Một bộ lọc nối bao gồm một tài liệu nếu tài liệu đó đáp ứng tất cả các bộ lọc đã cho.
hoặc(queryConstraints) Tạo một QueryCompositeFilterConstraint mới là sự tách biệt của các hạn chế đối với bộ lọc nhất định. Bộ lọc phân tách bao gồm một tài liệu nếu tài liệu đó đáp ứng bất kỳ bộ lọc nào trong số các bộ lọc đã cho.
hàm(tham chiếu, ...)
addDoc(tài liệu tham khảo, dữ liệu) Thêm một tài liệu mới vào CollectionReference được chỉ định bằng dữ liệu đã cho, tự động gán mã tài liệu cho tài liệu đó.Kết quả ghi này sẽ chỉ được phản ánh trong các lần đọc tài liệu xảy ra sau khi lời hứa được trả về được phân giải. Nếu ứng dụng không có kết nối mạng, thì quá trình ghi sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.
bộ sưu tập(tham chiếu, đường dẫn, đường dẫn phân đoạn) Lấy một thực thể CollectionReference tham chiếu đến một bộ sưu tập con reference tại đường dẫn tương đối được chỉ định.
bộ sưu tập(tham chiếu, đường dẫn, đường dẫn phân đoạn) Lấy một thực thể CollectionReference tham chiếu đến một bộ sưu tập con reference tại đường dẫn tương đối được chỉ định.
deleteDoc(tài liệu tham khảo) Xoá tài liệu mà DocumentReference được chỉ định tham chiếu đến.Thao tác xoá sẽ chỉ được phản ánh trong các lượt đọc tài liệu diễn ra sau khi lời hứa được trả về được giải quyết. Nếu ứng dụng không có kết nối mạng, thì thao tác xoá sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.
doc(tham chiếu, đường dẫn, pathSegments) Lấy một thực thể DocumentReference tham chiếu đến một tài liệu trong reference tại đường dẫn tương đối được chỉ định. Nếu bạn không chỉ định đường dẫn, thì hệ thống sẽ dùng một mã nhận dạng duy nhất được tạo tự động cho DocumentReference được trả về.
doc(tham chiếu, đường dẫn, pathSegments) Lấy một thực thể DocumentReference tham chiếu đến một tài liệu trong reference tại đường dẫn tương đối được chỉ định.
getDoc(tài liệu tham khảo) Đọc tài liệu mà tham chiếu tài liệu được chỉ định tham chiếu đến.Tất cả tài liệu được tìm nạp trực tiếp từ máy chủ, ngay cả khi tài liệu đã được đọc hoặc sửa đổi trước đó. Nội dung sửa đổi gần đây chỉ được phản ánh trong DocumentSnapshot đã truy xuất nếu phần phụ trợ đã áp dụng các nội dung sửa đổi đó. Nếu ứng dụng không có kết nối mạng, thì quá trình đọc sẽ không thành công. Nếu bạn muốn sử dụng tính năng lưu vào bộ nhớ đệm hoặc xem các nội dung sửa đổi cục bộ, vui lòng sử dụng SDK Firestore đầy đủ.
setDoc(tài liệu tham khảo, dữ liệu) Ghi vào tài liệu do DocumentReference chỉ định tham chiếu đến. Tài liệu chưa tồn tại, tài liệu đó sẽ được tạo.Kết quả ghi này sẽ chỉ được phản ánh trong các lần đọc tài liệu diễn ra sau khi lời hứa được trả về được phân giải. Nếu ứng dụng không có kết nối mạng, thì quá trình ghi sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.
setDoc(tài liệu tham khảo, dữ liệu, lựa chọn) Ghi vào tài liệu do DocumentReference chỉ định tham chiếu đến. Nếu chưa có, tài liệu sẽ được tạo. Nếu bạn cung cấp merge hoặc mergeFields, thì dữ liệu được cung cấp có thể được hợp nhất vào một tài liệu hiện có.Kết quả ghi này sẽ chỉ được phản ánh trong các lượt đọc tài liệu xảy ra sau khi lời hứa được trả về được phân giải. Nếu ứng dụng không có kết nối mạng, thì quá trình ghi sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.
updateDoc(tài liệu tham khảo; dữ liệu) Cập nhật các trường trong tài liệu do DocumentReference được chỉ định tham chiếu đến. Quá trình cập nhật sẽ không thành công nếu áp dụng cho một tài liệu không tồn tại.Kết quả của lần cập nhật này sẽ chỉ được phản ánh trong các lần đọc tài liệu xảy ra sau khi lời hứa được trả về được phân giải. Nếu máy khách không kết nối mạng, thì quá trình cập nhật sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.
updateDoc(tham chiếu; trường; giá trị; moreFieldsAndValues) Các trường cập nhật trong tài liệu mà DocumentReference được chỉ định tham chiếu đến. Quá trình cập nhật sẽ không thành công nếu áp dụng cho một tài liệu không tồn tại.Bạn có thể cập nhật các trường lồng nhau bằng cách cung cấp các chuỗi đường dẫn trường được phân tách bằng dấu chấm hoặc bằng cách cung cấp các đối tượng FieldPath.Kết quả của quá trình cập nhật này sẽ chỉ được phản ánh trong các lượt đọc tài liệu diễn ra sau khi lời hứa được trả về được phân giải. Nếu máy khách không kết nối mạng, thì quá trình cập nhật sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.
hàm(snapshot, ...)
endAt(ảnh chụp nhanh) Tạo một QueryEndAtConstraint để sửa đổi kết quả được đặt thành kết thúc tại tài liệu được cung cấp (bao gồm). Vị trí kết thúc tương ứng với thứ tự của truy vấn. Tài liệu phải chứa tất cả các trường được cung cấp theo thứ tự OrderBy của truy vấn.
endTrước(ảnh chụp nhanh) Tạo một QueryEndAtConstraint để sửa đổi kết quả đã đặt thành kết thúc trước tài liệu được cung cấp (độc quyền). Vị trí kết thúc tương ứng với thứ tự của truy vấn. Tài liệu phải chứa tất cả các trường được cung cấp theo thứ tự OrderBy của truy vấn.
startSau(ảnh chụp nhanh) Tạo một QueryStartAtConstraint giúp sửa đổi nhóm kết quả để bắt đầu sau tài liệu được cung cấp (độc quyền). Vị trí bắt đầu tương ứng với thứ tự của truy vấn. Tài liệu phải chứa tất cả các trường được cung cấp theo thứ tự OrderBy của truy vấn.
startAt(snapshot) Tạo một QueryStartAtConstraint nhằm sửa đổi tập hợp kết quả để bắt đầu từ tài liệu đã cung cấp (bao gồm). Vị trí bắt đầu tương ứng với thứ tự của truy vấn. Tài liệu phải chứa tất cả các trường được cung cấp trong orderBy của truy vấn này.
hàm(giá trị, ...)
vectơ(giá trị) Tạo một VectorValue mới được tạo bằng bản sao của mảng số đã cho.

Lớp học

Hạng Mô tả
AggregateField (Trường tổng hợp) Đại diện cho một phép tổng hợp mà Firestore có thể thực hiện.
Tổng hợp truy vấn ảnh chụp nhanh Kết quả của việc thực thi một truy vấn tổng hợp.
Byte Đối tượng bất biến đại diện cho một mảng byte.
Tham khảo về bộ sưu tập Bạn có thể dùng đối tượng CollectionReference để thêm tài liệu, lấy thông tin tham chiếu tài liệu và truy vấn tài liệu (sử dụng query()).
Tài liệu tham khảo DocumentReference là một vị trí tài liệu trong cơ sở dữ liệu Firestore và có thể được dùng để ghi, đọc hoặc nghe thông tin vị trí. Giấy tờ tại vị trí được tham chiếu có thể tồn tại hoặc không.
Ảnh chụp màn hình tài liệu DocumentSnapshot chứa dữ liệu được đọc từ một tài liệu trong cơ sở dữ liệu Firestore của bạn. Bạn có thể trích xuất dữ liệu bằng .data() hoặc .get(<field>) để lấy một trường cụ thể.Đối với DocumentSnapshot trỏ đến một tài liệu không tồn tại, mọi quyền truy cập dữ liệu sẽ trả về giá trị "không xác định". Bạn có thể sử dụng phương thức exists() để xác minh rõ ràng sự tồn tại của một tài liệu.
FieldPath (Đường dẫn trường) FieldPath đề cập đến một trường trong tài liệu. Đường dẫn có thể bao gồm một tên trường duy nhất (là trường cấp cao nhất trong tài liệu) hoặc một danh sách các tên trường (tham chiếu đến một trường được lồng trong tài liệu).Bạn có thể tạo một FieldPath bằng cách cung cấp tên trường. Nếu có nhiều tên trường, đường dẫn sẽ trỏ đến trường được lồng trong một tài liệu.
Giá trị trường Các giá trị Sentinel có thể dùng khi viết các trường tài liệu bằng set() hoặc update().
Khôi phục Giao diện dịch vụ Cloud Firestore.Đừng gọi trực tiếp hàm khởi tạo này. Thay vào đó, hãy sử dụng getFirestore().
Lỗi khôi phục dữ liệu Lỗi do một thao tác trên Firestore trả về.
GeoPoint Đối tượng bất biến đại diện cho một vị trí địa lý trong Firestore. Vị trí được biểu thị dưới dạng cặp vĩ độ/kinh độ.Giá trị vĩ độ nằm trong khoảng [-90, 90]. Giá trị kinh độ nằm trong khoảng [-180, 180].
Cụm từ tìm kiếm Query đề cập đến một truy vấn mà bạn có thể đọc hoặc nghe. Bạn cũng có thể tạo các đối tượng Query đã tinh chỉnh bằng cách thêm các bộ lọc và thứ tự sắp xếp.
QueryCompositeFilterConstraint QueryCompositeFilterConstraint dùng để thu hẹp tập hợp các tài liệu do truy vấn Firestore trả về bằng cách thực hiện hàm logic OR hoặc AND của nhiều QueryFieldFilterConstraint hoặc QueryCompositeFilterConstraint. QueryCompositeFilterConstraint được tạo bằng cách gọi or() hoặc and(), sau đó có thể được truyền đến query() để tạo một phiên bản truy vấn mới cũng chứa QueryCompositeFilterConstraint.
QueryConstraint QueryConstraint dùng để thu hẹp tập hợp các tài liệu do truy vấn Firestore trả về. QueryConstraint được tạo bằng cách gọi where(), orderBy(), startAt(), startSau(), endBefore(), endAt(), limit(), limitToLast() và sau đó có thể được chuyển đến truy vấn mới để tạo truy vấn đó{/1.QueryConstraint
Truy vấn tài liệu ảnh chụp nhanh QueryDocumentSnapshot chứa dữ liệu được đọc từ một tài liệu trong cơ sở dữ liệu Firestore dưới dạng một phần của truy vấn. Chúng tôi đảm bảo tài liệu này luôn tồn tại và bạn có thể trích xuất dữ liệu trong tài liệu đó bằng .data() hoặc .get(<field>) để lấy một trường cụ thể.QueryDocumentSnapshot cung cấp nền tảng API giống như DocumentSnapshot. Vì kết quả truy vấn chỉ chứa các tài liệu hiện có, nên thuộc tính exists sẽ luôn đúng và data() sẽ không bao giờ trả về "không xác định".
QueryEndAtConstraint QueryEndAtConstraint dùng để loại trừ tài liệu khỏi phần cuối của tập hợp kết quả do truy vấn Firestore trả về. QueryEndAtConstraint được tạo bằng cách gọi endAt() hoặc endBefore(), sau đó có thể được truyền đến query() để tạo một thực thể truy vấn mới cũng chứa QueryEndAtConstraint này.
QueryFieldFilterConstraint QueryFieldFilterConstraint dùng để thu hẹp tập hợp các tài liệu do truy vấn trên Firestore trả về bằng cách lọc trên một hoặc nhiều trường tài liệu. QueryFieldFilterConstraint được tạo bằng cách gọi where(), sau đó có thể được chuyển đến query() để tạo phiên bản truy vấn mới cũng chứa QueryFieldFilterConstraint này.
QueryLimitConstraint QueryLimitConstraint dùng để giới hạn số lượng tài liệu mà một truy vấn trên Firestore trả về. QueryLimitConstraint được tạo bằng cách gọi limit() hoặc limitToLast(), sau đó có thể được truyền đến query() để tạo một phiên bản truy vấn mới cũng chứa QueryLimitConstraint này.
QueryOrderByConstraint QueryOrderByConstraint được dùng để sắp xếp tập hợp các tài liệu do truy vấn Firestore trả về. QueryOrderByConstraint được tạo bằng cách gọi orderBy(), sau đó có thể được chuyển tới query() để tạo một phiên bản truy vấn mới cũng chứa QueryOrderByConstraint này.Lưu ý: Những tài liệu không chứa trường orderBy sẽ không xuất hiện trong kết quả truy vấn.
Truy vấn nhanh QuerySnapshot chứa không hoặc nhiều đối tượng DocumentSnapshot đại diện cho kết quả của một truy vấn. Bạn có thể truy cập các tài liệu dưới dạng một mảng thông qua thuộc tính docs hoặc được liệt kê bằng phương thức forEach. Số lượng tài liệu có thể được xác định thông qua các thuộc tính emptysize.
QueryStartAtConstraint QueryStartAtConstraint dùng để loại trừ tài liệu khỏi phần đầu của tập hợp kết quả do truy vấn Firestore trả về. QueryStartAtConstraint được tạo bằng cách gọi startAt() hoặc startAfter(), sau đó có thể được truyền đến query() để tạo một thực thể truy vấn mới cũng chứa QueryStartAtConstraint này.
Dấu thời gian Timestamp đại diện cho một thời điểm không phụ thuộc vào mọi múi giờ hay lịch, được biểu thị dưới dạng giây và phân số của giây ở độ phân giải nano giây theo giờ UTC (theo giờ UTC).Mã này được mã hoá bằng Lịch Gregorian Proleptic, kéo dài từ năm thứ nhất của Lịch Gregory. Thông số này được mã hoá với giả định tất cả phút dài 60 giây, tức là giây nhuận được "nhám" để không cần bảng thứ hai nhuận để diễn giải. Dải ô là từ 0001-01-01T00:00:00Z đến 9999-12-31T23:59:59.999999999Z.Để biết các ví dụ và thông số kỹ thuật khác, hãy tham khảo định nghĩa về dấu thời gian.
Giao dịch Tham chiếu đến một giao dịch.Đối tượng Transaction được truyền đến updateFunction của một giao dịch cung cấp các phương thức để đọc và ghi dữ liệu trong ngữ cảnh giao dịch. Hãy xem runTransaction().
Giá trị vectơ Biểu thị một loại vectơ trong tài liệu trên Firestore. Tạo một phiên bản bằng . Giá trị vectơ
WriteBatch Một lô ghi, dùng để thực hiện nhiều lượt ghi dưới dạng một đơn vị nguyên tử.Bạn có thể thu nạp đối tượng WriteBatch bằng cách gọi writeBatch(). Lớp này cung cấp các phương thức để thêm các lượt ghi vào lô ghi. Không có lượt ghi nào được cam kết (hoặc hiển thị trên thiết bị) cho đến khi WriteBatch.commit() được gọi.

Giao diện

Giao diện Mô tả
AggregateSpec Chỉ định một tập hợp các hàm tổng hợp và bí danh của chúng.
DocumentData Dữ liệu tài liệu (để sử dụng với setDoc()) bao gồm các trường được liên kết với các giá trị.
FirestoreDataConverter Trình chuyển đổi mà withConverter() sử dụng để chuyển đổi các đối tượng người dùng thuộc loại AppModelType thành dữ liệu Firestore thuộc loại DbModelType.Việc sử dụng trình chuyển đổi cho phép bạn chỉ định các đối số loại chung khi lưu trữ và truy xuất đối tượng từ Firestore.Trong ngữ cảnh này, một "AppModel" là một lớp được dùng trong ứng dụng để đóng gói thông tin và chức năng liên quan lại với nhau. Ví dụ: một lớp như vậy có thể có các thuộc tính với kiểu dữ liệu phức tạp và lồng ghép, các thuộc tính dùng để ghi nhớ, thuộc tính của các kiểu không được Firestore hỗ trợ (chẳng hạn như symbolbigint) và các hàm trợ giúp thực hiện các thao tác phức hợp. Các lớp như vậy không phù hợp và/hoặc không thể lưu trữ vào cơ sở dữ liệu Firestore. Thay vào đó, các thực thể của lớp đó cần được chuyển đổi thành "đối tượng JavaScript cũ" (POJO) có các thuộc tính gốc hoàn toàn, có thể được lồng trong các POJO hoặc mảng POJO khác. Trong trường hợp này, loại này được gọi là "DbModel" và sẽ là đối tượng phù hợp để duy trì trong Firestore. Để thuận tiện, các ứng dụng có thể triển khai FirestoreDataConverter và đăng ký trình chuyển đổi với các đối tượng Firestore, chẳng hạn như DocumentReference hoặc Query, để tự động chuyển đổi AppModel thành DbModel khi lưu trữ vào Firestore và chuyển đổi DbModel thành AppModel khi truy xuất từ Firestore.
Cài đặt Chỉ định các cấu hình tuỳ chỉnh cho phiên bản Cloud Firestore của bạn. Bạn phải đặt các mã này trước khi gọi bất kỳ phương thức nào khác.
Giao dịch Các tuỳ chọn để tuỳ chỉnh hành vi giao dịch.

Nhập bí danh

Nhập bí danh Mô tả
AddPrefixToKeys (Thêm tiền tốToKeys) Trả về một tệp ánh xạ mới, trong đó mỗi khoá đều có tiền tố là khoá bên ngoài được thêm vào một dấu chấm.
AggregateFieldType Sự hợp nhất của tất cả các loại AggregateField được Firestore hỗ trợ.
AggregateSpecData Loại dữ liệu có các khoá được lấy từ AggregateSpec và có giá trị là kết quả của quá trình tổng hợp do AggregateField tương ứng thực hiện trong dữ liệu đầu vào AggregateSpec.
OverviewType (Loại tổng hợp) Loại liên kết biểu thị loại tổng hợp cần thực hiện.
ChildUpdateFields Trình trợ giúp tính toán các trường lồng nhau cho một loại T1 nhất định. Điều này là cần thiết để phân phối các kiểu liên kết như undefined | {...} (xảy ra với các đạo cụ không bắt buộc) hoặc {a: A} | {b: B}.Trong trường hợp sử dụng này, V được dùng để phân phối các kiểu liên kết của T[K] trên Record, vì T[K] được đánh giá dưới dạng một biểu thức và không được phân phối.Hãy xem https://www.typescriptlang.org/docs/handbook/advanced-types.html#attribution-conditional-types
FirestoreErrorCode Bộ mã trạng thái Firestore. Các mã này giống nhau ở những mã được gRPC hiển thị ở đây: https://github.com/grpc/grpc/blob/master/doc/statuscodes.mdCác giá trị có thể: – ''đã huỷ'': Thao tác đã bị huỷ (thường là do người gọi). – "không xác định": Lỗi không xác định hoặc lỗi từ một miền lỗi khác. – 'Illegal- đối số': Ứng dụng khách chỉ định đối số không hợp lệ. Xin lưu ý rằng thuộc tính này khác với "failed-precondition" (điều kiện tiên quyết không thành công). "đối số không hợp lệ" cho biết các đối số có vấn đề bất kể trạng thái của hệ thống (ví dụ: tên trường không hợp lệ). – "deadline-vượt quá": Thời hạn đã hết trước khi thao tác có thể hoàn tất. Đối với những hoạt động thay đổi trạng thái của hệ thống, lỗi này có thể được trả về ngay cả khi thao tác đã hoàn tất thành công. Ví dụ: một phản hồi thành công từ máy chủ có thể bị trì hoãn đủ lâu đến thời hạn. - 'not-found': Không tìm thấy một số tài liệu được yêu cầu. – "đã-có": Một số tài liệu mà chúng tôi cố gắng tạo đã tồn tại. – 'permission-denied': Phương thức gọi không có quyền thực thi thao tác đã chỉ định. – "tài nguyên đã hết": Một số tài nguyên đã hết, có thể đã đạt đến hạn mức cho mỗi người dùng, hoặc có thể toàn bộ hệ thống tệp đã hết dung lượng. – 'failed-precondition': Thao tác bị từ chối vì hệ thống không ở trạng thái cần thiết để thực thi thao tác. - 'bị huỷ': Thao tác bị huỷ, thường là do sự cố đồng thời như giao dịch bị huỷ, v.v. - 'ngoài phạm vi': Thao tác đã cố gắng vượt quá phạm vi hợp lệ. – "chưa triển khai": Thao tác chưa được triển khai hoặc không được hỗ trợ/bật. – 'internal': Lỗi nội bộ. Có nghĩa là một số bất biến dự kiến của hệ thống cơ bản đã bị hỏng. Nếu bạn thấy một trong những lỗi này, tức là đã xảy ra lỗi. – 'không có sẵn': Dịch vụ hiện không hoạt động. Đây rất có thể là một tình trạng tạm thời và có thể được khắc phục bằng cách thử lại bằng thuật toán thời gian đợi. – "Mất dữ liệu": Mất hoặc hỏng dữ liệu không thể khôi phục. - "chưa được xác thực": Yêu cầu không có thông tin xác thực hợp lệ cho thao tác này.
NestedUpdateFields Đối với mỗi trường (ví dụ: "bar", hãy tìm tất cả các khoá lồng nhau (ví dụ: {'bar.baz': T1, 'bar.qux': T2}). Phân nối chúng với nhau để tạo thành một bản đồ chứa tất cả các khoá có thể có, tất cả được đánh dấu là tuỳ chọn
OrderByDirection Hướng của mệnh đề orderBy() được chỉ định là "desc" hoặc "asc" (giảm dần hoặc tăng dần).
Phần bằng giá trị trường Tương tự như Partial<T> của TypeScript, nhưng cho phép loại bỏ các trường lồng nhau và chuyển trường giá trị dưới dạng giá trị thuộc tính.
Gốc Kiểu nguyên gốc.
QueryConstraintType Mô tả các quy tắc ràng buộc đối với truy vấn có trong SDK này.
QueryFilterConstraint QueryFilterConstraint là một loại liên kết trợ giúp đại diện cho QueryFieldFilterConstraintQueryCompositeFilterConstraint.
QueryNonFilterConstraint QueryNonFilterConstraint là một loại liên kết trợ giúp đại diện cho QueryConstraints dùng để thu hẹp hoặc sắp xếp thứ tự tập hợp tài liệu, nhưng không lọc một trường tài liệu một cách rõ ràng. QueryNonFilterConstraint được tạo bằng cách gọi orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit() hoặc limitToLast() và sau đó có thể được chuyển đến query() để tạo một phiên bản truy vấn mới/chứa} truy vấn mới.QueryConstraint
SetOptions Đối tượng tuỳ chọn định cấu hình hành vi của setDoc() và các lệnh gọi. Bạn có thể định cấu hình các lệnh gọi này để hợp nhất các chi tiết thay vì ghi đè toàn bộ tài liệu mục tiêu bằng cách cung cấp một SetOptions cùng với merge: true.
UnionToIntersection Cho trước loại hợp nhất U = T1 | T2 | ..., sẽ trả về loại giao nhau (T1 & T2 & ...).Sử dụng các loại có điều kiện phân phối và suy luận từ các loại có điều kiện. Phương pháp này hiệu quả vì có nhiều đề xuất cho cùng một biến loại ở các vị trí trái biến khiến hệ thống suy ra loại giao lộ. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-to-intersection-type
UpdateData Cập nhật dữ liệu (để sử dụng với updateDoc()) bao gồm các đường dẫn trường (ví dụ: "foo" hoặc "foo.baz") được ánh xạ đến các giá trị. Những trường chứa dấu chấm tham chiếu đến các trường lồng nhau trong tài liệu. Trường giá trị có thể được chuyển vào dưới dạng giá trị thuộc tính.
WhereFilterOp Điều kiện lọc trong mệnh đề where() được chỉ định bằng chuỗi '&lt;', '&lt;=', '==', '!=', '&gt;=', '&gt;', 'array-contains', 'in', 'array-contains-any' và 'not-in'.
WithFieldValue Cho phép chuyển trường giá trị dưới dạng giá trị thuộc tính trong khi vẫn duy trì an toàn về kiểu.

function(app, ...)

getFirestore(ứng dụng)

Trả về thực thể Firestore mặc định hiện có và liên kết với FirebaseApp được cung cấp. Nếu không có thực thể nào tồn tại, hãy khởi chạy một phiên bản mới với chế độ cài đặt mặc định.

Chữ ký:

export declare function getFirestore(app: FirebaseApp): Firestore;

Thông số

Thông số Loại Mô tả
ứng dụng Ứng dụng Firebase Phiên bản FirebaseApp mà phiên bản Firestore đã trả về được liên kết.

Trường hợp trả lại hàng:

Khôi phục

Bản sao Firestore của ứng dụng đã cung cấp.

getFirestore(ứng dụng, Cơ sở dữ liệuId)

API này được cung cấp dưới dạng bản xem trước cho các nhà phát triển và có thể thay đổi dựa trên phản hồi mà chúng tôi nhận được. Không sử dụng API này trong môi trường phát hành chính thức.

Trả về thực thể Firestore hiện có liên kết với FirebaseApp được cung cấp. Nếu không có thực thể nào tồn tại, hãy khởi chạy một phiên bản mới với chế độ cài đặt mặc định.

Chữ ký:

export declare function getFirestore(app: FirebaseApp, databaseId: string): Firestore;

Thông số

Thông số Loại Mô tả
ứng dụng Ứng dụng Firebase Phiên bản FirebaseApp mà phiên bản Firestore đã trả về được liên kết.
mã cơ sở dữ liệu chuỗi Tên của cơ sở dữ liệu.

Trường hợp trả lại hàng:

Khôi phục

Bản sao Firestore của ứng dụng đã cung cấp.

khởi độngFirestore(ứng dụng, chế độ cài đặt)

Khởi chạy một thực thể mới của Cloud Firestore với các chế độ cài đặt được cung cấp. Chỉ có thể được gọi trước các hàm khác, bao gồm cả getFirestore(). Nếu chế độ cài đặt tuỳ chỉnh trống, thì hàm này tương đương với việc gọi getFirestore().

Chữ ký:

export declare function initializeFirestore(app: FirebaseApp, settings: Settings): Firestore;

Thông số

Thông số Loại Mô tả
ứng dụng Ứng dụng Firebase FirebaseApp mà thực thể Firestore sẽ được liên kết.
cài đặt Cài đặt Đối tượng cài đặt để định cấu hình thực thể Firestore.

Trường hợp trả lại hàng:

Khôi phục

Một thực thể Firestore mới khởi tạo.

derivedFirestore(ứng dụng, chế độ cài đặt, DatabaseId)

API này được cung cấp dưới dạng bản xem trước cho các nhà phát triển và có thể thay đổi dựa trên phản hồi mà chúng tôi nhận được. Không sử dụng API này trong môi trường phát hành chính thức.

Khởi chạy một thực thể mới của Cloud Firestore với các chế độ cài đặt được cung cấp. Chỉ có thể được gọi trước các hàm khác, bao gồm cả getFirestore(). Nếu chế độ cài đặt tuỳ chỉnh trống, thì hàm này tương đương với việc gọi getFirestore().

Chữ ký:

export declare function initializeFirestore(app: FirebaseApp, settings: Settings, databaseId?: string): Firestore;

Thông số

Thông số Loại Mô tả
ứng dụng Ứng dụng Firebase FirebaseApp mà thực thể Firestore sẽ được liên kết.
cài đặt Cài đặt Đối tượng cài đặt để định cấu hình thực thể Firestore.
mã cơ sở dữ liệu chuỗi Tên của cơ sở dữ liệu.

Trường hợp trả lại hàng:

Khôi phục

Một thực thể Firestore mới khởi tạo.

function(firestore, ...)

bộ sưu tập(kho lửa, đường dẫn, đường dẫn phân đoạn)

Lấy một thực thể CollectionReference tham chiếu đến tập hợp tại đường dẫn tuyệt đối được chỉ định.

Chữ ký:

export declare function collection(firestore: Firestore, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;

Thông số

Thông số Loại Mô tả
kho cứu hoả Khôi phục Tham chiếu đến thực thể gốc Firestore.
đường dẫn chuỗi Đường dẫn đến một bộ sưu tập được phân tách bằng dấu gạch chéo.
path Segment (Phân đoạn đường dẫn) chuỗi[] Các phân đoạn đường dẫn bổ sung cần áp dụng liên quan đến đối số đầu tiên.

Trường hợp trả lại hàng:

CollectionReference<DocumentData, DocumentData>

Thực thể CollectionReference.

Trường hợp ngoại lệ

Nếu đường dẫn cuối cùng có số lượng phân đoạn bằng nhau và không trỏ đến một tập hợp.

collectionGroup(firestore, collectionId)

Tạo và trả về một thực thể Query mới bao gồm tất cả tài liệu trong cơ sở dữ liệu có trong một tập hợp hoặc bộ sưu tập con có collectionId đã cho.

Chữ ký:

export declare function collectionGroup(firestore: Firestore, collectionId: string): Query<DocumentData, DocumentData>;

Thông số

Thông số Loại Mô tả
kho cứu hoả Khôi phục Tham chiếu đến thực thể gốc Firestore.
mã bộ sưu tập chuỗi Xác định các tập hợp để truy vấn. Mọi bộ sưu tập hoặc bộ sưu tập con có mã nhận dạng này ở phân đoạn cuối cùng của đường dẫn sẽ được đưa vào. Không được chứa dấu gạch chéo.

Trường hợp trả lại hàng:

Truy vấn<DocumentData, DocumentData>

Query đã được tạo.

connectFirestoreEmulator(firestore, máy chủ, cổng, tuỳ chọn)

Sửa đổi phiên bản này để giao tiếp với trình mô phỏng Cloud Firestore.

Chữ ký:

export declare function connectFirestoreEmulator(firestore: Firestore, host: string, port: number, options?: {
    mockUserToken?: EmulatorMockTokenOptions | string;
}): void;

Thông số

Thông số Loại Mô tả
kho cứu hoả Khôi phục Thực thể Firestore để định cấu hình kết nối với trình mô phỏng.
máy chủ lưu trữ chuỗi máy chủ lưu trữ trình mô phỏng (ví dụ: localhost).
cổng số cổng trình mô phỏng (ví dụ: 9000).
tuỳ chọn { mockUserToken?: EmulatorMockTokenOptions | chuỗi; }

Trường hợp trả lại hàng:

trống

tài liệu(kho lửa, đường dẫn, đường dẫn phân đoạn)

Lấy một thực thể DocumentReference tham chiếu đến tài liệu tại đường dẫn tuyệt đối đã chỉ định.

Chữ ký:

export declare function doc(firestore: Firestore, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;

Thông số

Thông số Loại Mô tả
kho cứu hoả Khôi phục Tham chiếu đến thực thể gốc Firestore.
đường dẫn chuỗi Đường dẫn đến một tài liệu được phân tách bằng dấu gạch chéo.
path Segment (Phân đoạn đường dẫn) chuỗi[] Các phân đoạn đường dẫn bổ sung sẽ được áp dụng tương ứng với đối số đầu tiên.

Trường hợp trả lại hàng:

DocumentReference<DocumentData, documentData>

Thực thể DocumentReference.

Trường hợp ngoại lệ

Nếu đường dẫn cuối cùng có số đoạn lẻ và không trỏ đến tài liệu.

runTransaction(firestore; updateFunction; các tuỳ chọn)

Thực thi updateFunction đã cho và sau đó cố gắng xác nhận các thay đổi được áp dụng trong giao dịch. Nếu bất kỳ tài liệu nào được đọc trong giao dịch đã thay đổi, Cloud Firestore sẽ thử lại updateFunction. Nếu không thực hiện được sau 5 lần thử, thì giao dịch sẽ không thành công.

Số lượt ghi tối đa được phép trong một giao dịch là 500.

Chữ ký:

export declare function runTransaction<T>(firestore: Firestore, updateFunction: (transaction: Transaction) => Promise<T>, options?: TransactionOptions): Promise<T>;

Thông số

Thông số Loại Mô tả
kho cứu hoả Khôi phục Mã tham chiếu đến cơ sở dữ liệu Firestore để chạy giao dịch này.
cập nhậtHàm (giao dịch: Giao dịch) => Cam kết<T> Hàm thực thi trong ngữ cảnh giao dịch.
tuỳ chọn Giao dịch Đối tượng tuỳ chọn để định cấu hình số lần cam kết tối đa.

Trường hợp trả lại hàng:

Cam kết<T>

Nếu giao dịch đã hoàn tất thành công hoặc bị huỷ một cách rõ ràng (updateFunction trả về một hứa hẹn không thành công), thì lời hứa mà updateFunctiontrả về sẽ được trả về ở đây. Ngược lại, nếu giao dịch không thành công, hệ thống sẽ trả về lời hứa bị từ chối kèm theo lỗi không thành công tương ứng.

chấm dứt(cửa hàng lửa)

Chấm dứt thực thể Firestore được cung cấp.

Sau khi gọi terminate(), bạn chỉ có thể sử dụng các hàm clearIndexedDbPersistence(). Mọi hàm khác sẽ gửi một FirestoreError. Việc chấm dứt không huỷ bỏ bất kỳ lệnh ghi đang chờ xử lý nào và mọi lời hứa đang chờ phản hồi từ máy chủ sẽ không được giải quyết.

Để khởi động lại sau khi chấm dứt, hãy tạo một thực thể mới của Firestore bằng getFirestore().

Chữ ký:

export declare function terminate(firestore: Firestore): Promise<void>;

Thông số

Thông số Loại Mô tả
kho cứu hoả Khôi phục Thực thể Firestore cần chấm dứt.

Trường hợp trả lại hàng:

Lời hứa<vô hiệu>

Promise được phân giải khi thực thể đã kết thúc thành công.

ghi lô(firestore)

Tạo một lô ghi, dùng để thực hiện nhiều lần ghi dưới dạng một thao tác ở cấp nguyên tử. Số lần ghi tối đa được phép trong một WriteBatch là 500.

Kết quả của những lần ghi này sẽ chỉ được phản ánh trong các lần đọc tài liệu xảy ra sau khi phân giải hàm hứa được trả về. Nếu ứng dụng không có kết nối mạng, thì quá trình ghi sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.

Chữ ký:

export declare function writeBatch(firestore: Firestore): WriteBatch;

Thông số

Thông số Loại Mô tả
kho cứu hoả Khôi phục

Trường hợp trả lại hàng:

WriteBatch

WriteBatch có thể dùng để thực thi nhiều lượt ghi ở dạng nguyên tử.

Hàm()

số đếm()

Tạo một đối tượng AggregateField có thể dùng để tính số lượng tài liệu trong tập hợp kết quả của một truy vấn.

Chữ ký:

export declare function count(): AggregateField<number>;

Trường hợp trả lại hàng:

AggregateField<number>

deleteField()

Trả về một người gửi để sử dụng với updateDoc() hoặc setDoc() với {merge: true} nhằm đánh dấu một trường cần xoá.

Chữ ký:

export declare function deleteField(): FieldValue;

Trường hợp trả lại hàng:

Giá trị trường

documentId()

Trả về một giám sát đặc biệt FieldPath để tham chiếu đến mã nhận dạng của một tài liệu. Có thể dùng tên này trong các truy vấn để sắp xếp hoặc lọc theo mã tài liệu.

Chữ ký:

export declare function documentId(): FieldPath;

Trường hợp trả lại hàng:

FieldPath (Đường dẫn trường)

getFirestore()

Trả về phiên bản Firestore mặc định hiện có được liên kết với FirebaseApp mặc định. Nếu không có thực thể nào tồn tại, hãy khởi chạy một phiên bản mới với chế độ cài đặt mặc định.

Chữ ký:

export declare function getFirestore(): Firestore;

Trường hợp trả lại hàng:

Khôi phục

Bản sao Firestore của ứng dụng đã cung cấp.

máy chủDấu thời gian()

Trả về một người gửi dùng với setDoc() hoặc updateDoc() để đưa dấu thời gian do máy chủ tạo vào dữ liệu đã ghi.

Chữ ký:

export declare function serverTimestamp(): FieldValue;

Trường hợp trả lại hàng:

Giá trị trường

function(databaseId, ...)

getFirestore(databaseId)

API này được cung cấp dưới dạng bản xem trước cho các nhà phát triển và có thể thay đổi dựa trên phản hồi mà chúng tôi nhận được. Không sử dụng API này trong môi trường phát hành chính thức.

Trả về thực thể Firestore hiện có được liên kết với FirebaseApp mặc định. Nếu không có thực thể nào tồn tại, hãy khởi chạy một phiên bản mới với chế độ cài đặt mặc định.

Chữ ký:

export declare function getFirestore(databaseId: string): Firestore;

Thông số

Thông số Loại Mô tả
mã cơ sở dữ liệu chuỗi Tên của cơ sở dữ liệu.

Trường hợp trả lại hàng:

Khôi phục

Bản sao Firestore của ứng dụng đã cung cấp.

hàm(phần tử, ...)

mảngRemove(phần tử)

Trả về một giá trị đặc biệt có thể dùng với setDoc() hoặc yêu cầu máy chủ xoá các phần tử đã cho khỏi bất kỳ giá trị mảng nào đã tồn tại trên máy chủ. Tất cả các bản sao của từng phần tử được chỉ định sẽ bị xóa khỏi mảng. Nếu trường đang được sửa đổi không phải là một mảng, thì trường đó sẽ bị ghi đè bằng một mảng trống.

Chữ ký:

export declare function arrayRemove(...elements: unknown[]): FieldValue;

Thông số

Thông số Loại Mô tả
phần tử không xác định[] Các phần tử cần xoá khỏi mảng.

Trường hợp trả lại hàng:

Giá trị trường

Gửi yêu cầu FieldValue để dùng trong lệnh gọi đến setDoc() hoặc updateDoc()

mảngUnion(phần tử)

Trả về một giá trị đặc biệt có thể dùng với setDoc() hoặc updateDoc(). Giá trị này yêu cầu máy chủ hợp nhất các phần tử đã cho với bất kỳ giá trị mảng nào đã tồn tại trên máy chủ. Mỗi phần tử được chỉ định chưa tồn tại trong mảng sẽ được thêm vào cuối. Nếu trường đang được sửa đổi không phải là một mảng thì trường đó sẽ bị ghi đè bằng một mảng chứa chính xác các phần tử được chỉ định.

Chữ ký:

export declare function arrayUnion(...elements: unknown[]): FieldValue;

Thông số

Thông số Loại Mô tả
phần tử không xác định[] Các phần tử cần hợp nhất thành mảng.

Trường hợp trả lại hàng:

Giá trị trường

Gửi yêu cầu FieldValue để dùng trong lệnh gọi đến setDoc() hoặc updateDoc().

function(trường, ...)

trung bình(trường)

Tạo một đối tượng AggregateField có thể dùng để tính giá trị trung bình của một trường đã chỉ định trên một dải tài liệu trong tập hợp kết quả của một truy vấn.

Chữ ký:

export declare function average(field: string | FieldPath): AggregateField<number | null>;

Thông số

Thông số Loại Mô tả
trường chuỗi | FieldPath (Đường dẫn trường) Chỉ định trường để tính giá trị trung bình của tập hợp kết quả.

Trường hợp trả lại hàng:

AggregateField<number | rỗng>

sum(trường)

Tạo một đối tượng AggregateField có thể dùng để tính tổng của một trường chỉ định trên một dải tài liệu trong tập hợp kết quả của một truy vấn.

Chữ ký:

export declare function sum(field: string | FieldPath): AggregateField<number>;

Thông số

Thông số Loại Mô tả
trường chuỗi | FieldPath (Đường dẫn trường) Chỉ định trường để tính tổng qua tập hợp kết quả.

Trường hợp trả lại hàng:

AggregateField<number>

function(fieldPath, ...)

orderBy(fieldPath, directionStr)

Tạo một QueryOrderByConstraint để sắp xếp kết quả truy vấn theo trường được chỉ định, không bắt buộc theo thứ tự giảm dần thay vì tăng dần.

Chữ ký:

export declare function orderBy(fieldPath: string | FieldPath, directionStr?: OrderByDirection): QueryOrderByConstraint;

Thông số

Thông số Loại Mô tả
Đường dẫn trường chuỗi | FieldPath (Đường dẫn trường) Trường để sắp xếp theo.
Chỉ đường OrderByDirection Hướng không bắt buộc để sắp xếp theo ("theo thứ tự tăng dần" hoặc "theo thứ tự giảm dần"). Nếu bạn không chỉ định, thứ tự sẽ tăng dần.

Trường hợp trả lại hàng:

QueryOrderByConstraint

QueryOrderByConstraint đã tạo.

where(fieldPath; opStr; giá trị)

Tạo một QueryFieldFilterConstraint để thực thi các tài liệu phải chứa trường được chỉ định và giá trị phải đáp ứng quy tắc ràng buộc mối quan hệ đã cung cấp.

Chữ ký:

export declare function where(fieldPath: string | FieldPath, opStr: WhereFilterOp, value: unknown): QueryFieldFilterConstraint;

Thông số

Thông số Loại Mô tả
Đường dẫn trường chuỗi | FieldPath (Đường dẫn trường) Lộ trình so sánh
hoạt động WhereFilterOp Chuỗi thao tác (ví dụ: "&lt;", "&lt;=", "==", "&lt;", "&lt;=", "!=").
value không xác định Giá trị để so sánh

Trường hợp trả lại hàng:

QueryFieldFilterConstraint

QueryFieldFilterConstraint đã tạo.

function(fieldValues, ...)

endAt(fieldValues)

Tạo một QueryEndAtConstraint để sửa đổi kết quả được đặt thành kết thúc tại các trường đã cung cấp tương ứng với thứ tự của truy vấn. Thứ tự của các giá trị trường phải khớp với thứ tự của thứ tự theo mệnh đề của truy vấn.

Chữ ký:

export declare function endAt(...fieldValues: unknown[]): QueryEndAtConstraint;

Thông số

Thông số Loại Mô tả
giá trị trường không xác định[] Các giá trị trường để kết thúc truy vấn này theo thứ tự của truy vấn.

Trường hợp trả lại hàng:

QueryEndAtConstraint

QueryEndAtConstraint để truyền đến query()

endbefore(giá trị trường)

Tạo một QueryEndAtConstraint để sửa đổi tập hợp kết quả thành kết thúc trước khi các trường được cung cấp tương ứng với thứ tự của truy vấn. Thứ tự của các giá trị trường phải khớp với thứ tự của thứ tự theo mệnh đề của truy vấn.

Chữ ký:

export declare function endBefore(...fieldValues: unknown[]): QueryEndAtConstraint;

Thông số

Thông số Loại Mô tả
giá trị trường không xác định[] Các giá trị trường để kết thúc truy vấn này trước, theo thứ tự của truy vấn.

Trường hợp trả lại hàng:

QueryEndAtConstraint

QueryEndAtConstraint để truyền đến query()

startSau(Giá trị trường)

Tạo một QueryStartAtConstraint để sửa đổi tập hợp kết quả để bắt đầu sau các trường đã cung cấp tương ứng với thứ tự của truy vấn. Thứ tự của các giá trị trường phải khớp với thứ tự của thứ tự theo mệnh đề của truy vấn.

Chữ ký:

export declare function startAfter(...fieldValues: unknown[]): QueryStartAtConstraint;

Thông số

Thông số Loại Mô tả
giá trị trường không xác định[] Các giá trị trường để bắt đầu truy vấn này sau đó, theo thứ tự của truy vấn.

Trường hợp trả lại hàng:

QueryStartAtConstraint

QueryStartAtConstraint để truyền đến query()

startAt(giá trị trường)

Tạo một QueryStartAtConstraint để sửa đổi tập hợp kết quả để bắt đầu tại các trường đã cung cấp tương ứng với thứ tự của truy vấn. Thứ tự của các giá trị trường phải khớp với thứ tự của thứ tự theo mệnh đề của truy vấn.

Chữ ký:

export declare function startAt(...fieldValues: unknown[]): QueryStartAtConstraint;

Thông số

Thông số Loại Mô tả
giá trị trường không xác định[] Các giá trị trường để bắt đầu truy vấn này theo thứ tự của truy vấn.

Trường hợp trả lại hàng:

QueryStartAtConstraint

QueryStartAtConstraint để truyền đến query().

hàm(trái, ...)

totalFieldEqual(trái, phải)

So sánh hai thực thể "AggregateField" để xét đẳng thức.

Chữ ký:

export declare function aggregateFieldEqual(left: AggregateField<unknown>, right: AggregateField<unknown>): boolean;

Thông số

Thông số Loại Mô tả
trái AggregateField<không xác định> So sánh AggregateField này với right.
phải AggregateField<không xác định> So sánh AggregateField này với left.

Trường hợp trả lại hàng:

boolean

tổng hợpQuerySnapshotEqual(trái, phải)

So sánh 2 thực thể AggregateQuerySnapshot để xem có đẳng thức.

2 thực thể AggregateQuerySnapshot được coi là "bằng" nếu chúng có các truy vấn cơ bản so sánh bằng nhau và cùng dữ liệu.

Chữ ký:

export declare function aggregateQuerySnapshotEqual<AggregateSpecType extends AggregateSpec, AppModelType, DbModelType extends DocumentData>(left: AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>, right: AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>): boolean;

Thông số

Thông số Loại Mô tả
trái AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType> AggregateQuerySnapshot đầu tiên để so sánh.
phải AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType> AggregateQuerySnapshot thứ hai cần so sánh.

Trường hợp trả lại hàng:

boolean

true nếu các đối tượng "bằng", như định nghĩa ở trên hoặc false nếu không.

queryEqual(trái, phải)

Trả về true nếu các truy vấn đã cho trỏ đến cùng một tập hợp và áp dụng các điều kiện ràng buộc tương tự.

Chữ ký:

export declare function queryEqual<AppModelType, DbModelType extends DocumentData>(left: Query<AppModelType, DbModelType>, right: Query<AppModelType, DbModelType>): boolean;

Thông số

Thông số Loại Mô tả
trái Truy vấn<AppModelType, DbModelType> Query để so sánh.
phải Truy vấn<AppModelType, DbModelType> Query để so sánh.

Trường hợp trả lại hàng:

boolean

true nếu các tham chiếu trỏ đến cùng một vị trí trong cùng một cơ sở dữ liệu Firestore.

refEqual(trái; phải)

Trả về true nếu các giá trị tham chiếu đã cho bằng nhau.

Chữ ký:

export declare function refEqual<AppModelType, DbModelType extends DocumentData>(left: DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType>, right: DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType>): boolean;

Thông số

Thông số Loại Mô tả
trái DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType> Một tài liệu tham khảo để so sánh.
phải DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType> Một tài liệu tham khảo để so sánh.

Trường hợp trả lại hàng:

boolean

true nếu các tham chiếu trỏ đến cùng một vị trí trong cùng một cơ sở dữ liệu Firestore.

snapshotEqual(trái, phải)

Trả về true nếu các ảnh chụp nhanh được cung cấp bằng nhau.

Chữ ký:

export declare function snapshotEqual<AppModelType, DbModelType extends DocumentData>(left: DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType>, right: DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType>): boolean;

Thông số

Thông số Loại Mô tả
trái DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType> Thông tin tổng quan nhanh để so sánh.
phải DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType> Thông tin tổng quan nhanh để so sánh.

Trường hợp trả lại hàng:

boolean

true nếu các ảnh chụp nhanh bằng nhau.

hàm(giới hạn, ...)

giới hạn(giới hạn)

Tạo một QueryLimitConstraint chỉ trả về những tài liệu phù hợp đầu tiên.

Chữ ký:

export declare function limit(limit: number): QueryLimitConstraint;

Thông số

Thông số Loại Mô tả
giới hạn số Số lượng mục tối đa cần trả về.

Trường hợp trả lại hàng:

QueryLimitConstraint

QueryLimitConstraint đã tạo.

limitToLast(giới hạn)

Tạo một QueryLimitConstraint chỉ trả về những tài liệu khớp gần đây nhất.

Bạn phải chỉ định ít nhất một mệnh đề orderBy cho các truy vấn limitToLast, nếu không, hệ thống sẽ gửi một ngoại lệ trong quá trình thực thi.

Chữ ký:

export declare function limitToLast(limit: number): QueryLimitConstraint;

Thông số

Thông số Loại Mô tả
giới hạn số Số lượng mục tối đa cần trả về.

Trường hợp trả lại hàng:

QueryLimitConstraint

QueryLimitConstraint đã tạo.

hàm(loglevel, ...)

setLogLevel(logLevel)

Đặt độ chi tiết của nhật ký Cloud Firestore (gỡ lỗi, lỗi hoặc im lặng).

Chữ ký:

export declare function setLogLevel(logLevel: LogLevel): void;

Thông số

Thông số Loại Mô tả
cấp độ nhật ký Cấp độ nhật ký Độ chi tiết mà bạn đặt để ghi nhật ký hoạt động và lỗi. Có thể là bất kỳ giá trị nào sau đây:
  • debug cho cấp độ ghi nhật ký chi tiết nhất, chủ yếu cho mục đích gỡ lỗi.
  • error để chỉ ghi lại lỗi.
  • silent to turn off logging.

Trường hợp trả lại hàng:

trống

function(n, ...)

tăng dần(n)

Trả về một giá trị đặc biệt có thể dùng với setDoc() hoặc updateDoc(). Giá trị này yêu cầu máy chủ tăng giá trị hiện tại của trường theo giá trị đã cho.

Nếu toán hạng hoặc giá trị trường hiện tại sử dụng độ chính xác dấu phẩy động, thì tất cả số học đều tuân theo ngữ nghĩa của IEEE 754. Nếu cả hai giá trị đều là số nguyên, thì các giá trị nằm ngoài phạm vi số an toàn của JavaScript (Number.MIN_SAFE_INTEGER đến Number.MAX_SAFE_INTEGER) cũng bị mất độ chính xác. Hơn nữa, sau khi được xử lý bởi phần phụ trợ Firestore, tất cả các thao tác số nguyên đều được giới hạn trong khoảng từ -2^63 đến 2^63-1.

Nếu giá trị trường hiện tại không thuộc loại number hoặc nếu trường chưa tồn tại, quy tắc chuyển đổi sẽ đặt trường thành giá trị đã cho.

Chữ ký:

export declare function increment(n: number): FieldValue;

Thông số

Thông số Loại Mô tả
n số Giá trị cần tăng theo.

Trường hợp trả lại hàng:

Giá trị trường

Gửi yêu cầu FieldValue để dùng trong lệnh gọi đến setDoc() hoặc updateDoc()

function(truy vấn, ...)

getAggregate(query, totalSpec)

Tính toán các dữ liệu tổng hợp được chỉ định trên các tài liệu trong tập hợp kết quả của truy vấn cho trước mà không cần tải tài liệu xuống.

Việc sử dụng hàm này để thực hiện tổng hợp là một cách hiệu quả vì chỉ có các giá trị tổng hợp cuối cùng chứ không phải tài liệu' đã được tải xuống. Hàm này có thể tổng hợp tài liệu trong trường hợp tập hợp kết quả quá lớn để tải xuống hoàn toàn (hàng nghìn tài liệu).

Chữ ký:

export declare function getAggregate<AggregateSpecType extends AggregateSpec, AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, aggregateSpec: AggregateSpecType): Promise<AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>>;

Thông số

Thông số Loại Mô tả
truy vấn Truy vấn<AppModelType, DbModelType> Truy vấn có nhóm kết quả được tổng hợp.
Thông số kỹ thuật tổng hợp AggregateSpecType Đối tượng AggregateSpec chỉ định các tổng hợp để thực hiện trên tập hợp kết quả. AggregateSpec chỉ định bí danh cho mỗi dữ liệu tổng hợp, có thể dùng để truy xuất kết quả tổng hợp.

Trường hợp trả lại hàng:

Cam kết<AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>>

Ví dụ

const aggregateSnapshot = await getAggregate(query, {
  countOfDocs: count(),
  totalHours: sum('hours'),
  averageScore: average('score')
});

const countOfDocs: number = aggregateSnapshot.data().countOfDocs;
const totalHours: number = aggregateSnapshot.data().totalHours;
const averageScore: number | null = aggregateSnapshot.data().averageScore;

getCount(truy vấn)

Tính toán số lượng tài liệu trong tập hợp kết quả của truy vấn đã cho mà không thực sự tải tài liệu xuống.

Việc sử dụng hàm này để đếm tài liệu là hiệu quả vì chỉ số lượng cuối cùng chứ không phải tài liệu' đã được tải xuống. Hàm này có thể đếm tài liệu trong trường hợp tập hợp kết quả quá lớn để tải xuống toàn bộ (hàng nghìn tài liệu).

Chữ ký:

export declare function getCount<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<AggregateQuerySnapshot<{
    count: AggregateField<number>;
}, AppModelType, DbModelType>>;

Thông số

Thông số Loại Mô tả
truy vấn Truy vấn<AppModelType, DbModelType> Truy vấn có kích thước nhóm kết quả được tính toán.

Trường hợp trả lại hàng:

Hứa hẹn<AggregateQuerySnapshot<{ count: AggregateField<number>; }, AppModelType, DbModelType>>

Lời hứa sẽ được giải quyết với số lượng; số lượng này có thể được truy xuất từ snapshot.data().count, trong đó snapshotAggregateQuerySnapshot mà Lời hứa được trả về phân giải đến.

getDocuments(truy vấn)

Thực thi truy vấn và trả về kết quả dưới dạng QuerySnapshot.

Tất cả truy vấn đều được máy chủ thực thi trực tiếp, ngay cả khi truy vấn đã được thực thi trước đó. Nội dung sửa đổi gần đây chỉ được phản ánh trong kết quả đã truy xuất nếu chương trình phụ trợ đã áp dụng các nội dung sửa đổi đó. Nếu ứng dụng không có kết nối mạng, thì thao tác sẽ không thành công. Để xem kết quả được lưu vào bộ nhớ đệm trước đó và các nội dung sửa đổi cục bộ, hãy sử dụng SDK Firestore đầy đủ.

Chữ ký:

export declare function getDocs<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;

Thông số

Thông số Loại Mô tả
truy vấn Truy vấn<AppModelType, DbModelType> Query để thực thi.

Trường hợp trả lại hàng:

Cam kết<QuerySnapshot<AppModelType, DbModelType>>

Lời hứa sẽ được giải quyết bằng kết quả của truy vấn.

truy vấn(query, compositeFilter, queryConstraints)

Tạo một thực thể Truy vấn bất biến mới và được mở rộng để bao gồm cả các điều kiện ràng buộc khác đối với truy vấn.

Chữ ký:

export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, compositeFilter: QueryCompositeFilterConstraint, ...queryConstraints: QueryNonFilterConstraint[]): Query<AppModelType, DbModelType>;

Thông số

Thông số Loại Mô tả
truy vấn Truy vấn<AppModelType, DbModelType> Thực thể Query để dùng làm cơ sở cho các quy tắc ràng buộc mới.
bộ lọc tổng hợp QueryCompositeFilterConstraint QueryCompositeFilterConstraint sẽ được áp dụng. Tạo QueryCompositeFilterConstraint bằng cách sử dụng and() hoặc or().
queryConstraints QueryNonFilterConstraint[] Các QueryNonFilterConstraint bổ sung cần áp dụng (ví dụ: orderBy(), limit()).

Trường hợp trả lại hàng:

Truy vấn<AppModelType, DbModelType>

Trường hợp ngoại lệ

nếu không thể kết hợp bất kỳ quy tắc ràng buộc nào đối với truy vấn đã cho với quy tắc ràng buộc hiện tại hoặc mới.

truy vấn(query, queryConstraints)

Tạo một thực thể Truy vấn bất biến mới và được mở rộng để bao gồm cả các điều kiện ràng buộc khác đối với truy vấn.

Chữ ký:

export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, ...queryConstraints: QueryConstraint[]): Query<AppModelType, DbModelType>;

Thông số

Thông số Loại Mô tả
truy vấn Truy vấn<AppModelType, DbModelType> Thực thể Query để dùng làm cơ sở cho các quy tắc ràng buộc mới.
queryConstraints QueryConstraint[] Danh sách QueryConstraints để áp dụng.

Trường hợp trả lại hàng:

Truy vấn<AppModelType, DbModelType>

Trường hợp ngoại lệ

nếu không thể kết hợp bất kỳ quy tắc ràng buộc nào đối với truy vấn đã cho với quy tắc ràng buộc hiện tại hoặc mới.

function(queryConstraints, ...)

và(queryConstraints)

Tạo một QueryCompositeFilterConstraint mới là sự kết hợp của các giới hạn bộ lọc nhất định. Một bộ lọc nối bao gồm một tài liệu nếu tài liệu đó đáp ứng tất cả các bộ lọc đã cho.

Chữ ký:

export declare function and(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;

Thông số

Thông số Loại Mô tả
queryConstraints QueryFilterConstraint[] Không bắt buộc. Danh sách QueryFilterConstraint để thực hiện việc liên kết. Các toán tử này phải được tạo bằng các lệnh gọi đến where(), or() hoặc and().

Trường hợp trả lại hàng:

QueryCompositeFilterConstraint

QueryCompositeFilterConstraint mới được tạo.

hoặc(queryConstraints)

Tạo một QueryCompositeFilterConstraint mới là sự tách biệt của các hạn chế đối với bộ lọc nhất định. Bộ lọc phân tách bao gồm một tài liệu nếu tài liệu đó đáp ứng bất kỳ bộ lọc nào trong số các bộ lọc đã cho.

Chữ ký:

export declare function or(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;

Thông số

Thông số Loại Mô tả
queryConstraints QueryFilterConstraint[] Không bắt buộc. Danh sách QueryFilterConstraint để thực hiện tách biệt. Các toán tử này phải được tạo bằng các lệnh gọi đến where(), or() hoặc and().

Trường hợp trả lại hàng:

QueryCompositeFilterConstraint

QueryCompositeFilterConstraint mới được tạo.

hàm(tham chiếu, ...)

addDoc(tài liệu tham khảo, dữ liệu)

Thêm một tài liệu mới vào CollectionReference được chỉ định bằng dữ liệu đã cho, tự động gán mã tài liệu cho tài liệu đó.

Kết quả của lần ghi này sẽ chỉ được phản ánh trong các lần đọc tài liệu xảy ra sau khi phân giải hàm hứa được trả về. Nếu ứng dụng không có kết nối mạng, thì quá trình ghi sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.

Chữ ký:

export declare function addDoc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<DocumentReference<AppModelType, DbModelType>>;

Thông số

Thông số Loại Mô tả
tham chiếu CollectionReference<AppModelType, DbModelType> Tham chiếu đến bộ sưu tập để thêm tài liệu này vào.
dữ liệu WithFieldValue<AppModelType> Đối tượng chứa dữ liệu của tài liệu mới.

Trường hợp trả lại hàng:

Cam kết<DocumentReference<AppModelType, DbModelType>>

Promise được giải quyết bằng DocumentReference trỏ đến tài liệu mới tạo sau khi tài liệu đó được ghi vào phần phụ trợ.

Trường hợp ngoại lệ

Lỗi – Nếu thông tin đầu vào mà bạn cung cấp không phải là tài liệu hợp lệ trên Firestore.

bộ sưu tập(tham chiếu, đường dẫn, đường dẫn phân đoạn)

Lấy một thực thể CollectionReference tham chiếu đến một bộ sưu tập con reference tại đường dẫn tương đối được chỉ định.

Chữ ký:

export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;

Thông số

Thông số Loại Mô tả
tham chiếu CollectionReference<AppModelType, DbModelType> Tham chiếu đến một bộ sưu tập.
đường dẫn chuỗi Đường dẫn đến một bộ sưu tập được phân tách bằng dấu gạch chéo.
path Segment (Phân đoạn đường dẫn) chuỗi[] Các phân đoạn đường dẫn bổ sung cần áp dụng liên quan đến đối số đầu tiên.

Trường hợp trả lại hàng:

CollectionReference<DocumentData, DocumentData>

Thực thể CollectionReference.

Trường hợp ngoại lệ

Nếu đường dẫn cuối cùng có số lượng phân đoạn bằng nhau và không trỏ đến một tập hợp.

bộ sưu tập(tham chiếu, đường dẫn, đường dẫn phân đoạn)

Lấy một thực thể CollectionReference tham chiếu đến một bộ sưu tập con reference tại đường dẫn tương đối được chỉ định.

Chữ ký:

export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;

Thông số

Thông số Loại Mô tả
tham chiếu DocumentReference<AppModelType, DbModelType> Tham chiếu đến tài liệu trên Firestore.
đường dẫn chuỗi Đường dẫn đến một bộ sưu tập được phân tách bằng dấu gạch chéo.
path Segment (Phân đoạn đường dẫn) chuỗi[] Các phân đoạn đường dẫn bổ sung sẽ được áp dụng tương ứng với đối số đầu tiên.

Trường hợp trả lại hàng:

CollectionReference<DocumentData, DocumentData>

Thực thể CollectionReference.

Trường hợp ngoại lệ

Nếu đường dẫn cuối cùng có số lượng phân đoạn bằng nhau và không trỏ đến một tập hợp.

deleteDoc(tài liệu tham khảo)

Xoá tài liệu được tham chiếu bởi DocumentReference được chỉ định.

Thao tác xoá sẽ chỉ được phản ánh trong các lượt đọc tài liệu diễn ra sau khi phân giải lời hứa được trả về. Nếu ứng dụng không có kết nối mạng, thì thao tác xoá sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.

Chữ ký:

export declare function deleteDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<void>;

Thông số

Thông số Loại Mô tả
tham chiếu DocumentReference<AppModelType, DbModelType> Tham chiếu đến tài liệu cần xoá.

Trường hợp trả lại hàng:

Lời hứa<vô hiệu>

Promise đã được phân giải sau khi xoá thành công tài liệu khỏi phần phụ trợ.

tài liệu(tham chiếu, đường dẫn, đường dẫn phân đoạn)

Lấy một thực thể DocumentReference tham chiếu đến một tài liệu trong reference tại đường dẫn tương đối được chỉ định. Nếu bạn không chỉ định đường dẫn, thì hệ thống sẽ dùng một mã nhận dạng duy nhất được tạo tự động cho DocumentReference được trả về.

Chữ ký:

export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path?: string, ...pathSegments: string[]): DocumentReference<AppModelType, DbModelType>;

Thông số

Thông số Loại Mô tả
tham chiếu CollectionReference<AppModelType, DbModelType> Tham chiếu đến một bộ sưu tập.
đường dẫn chuỗi Đường dẫn đến một tài liệu được phân tách bằng dấu gạch chéo. Phải được bỏ qua để sử dụng mã nhận dạng được tạo tự động.
path Segment (Phân đoạn đường dẫn) chuỗi[] Các phân đoạn đường dẫn bổ sung sẽ được áp dụng tương ứng với đối số đầu tiên.

Trường hợp trả lại hàng:

DocumentReference<AppModelType, DbModelType>

Thực thể DocumentReference.

Trường hợp ngoại lệ

Nếu đường dẫn cuối cùng có số đoạn lẻ và không trỏ đến tài liệu.

tài liệu(tham chiếu, đường dẫn, đường dẫn phân đoạn)

Lấy một thực thể DocumentReference tham chiếu đến một tài liệu trong reference tại đường dẫn tương đối được chỉ định.

Chữ ký:

export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;

Thông số

Thông số Loại Mô tả
tham chiếu DocumentReference<AppModelType, DbModelType> Tham chiếu đến tài liệu trên Firestore.
đường dẫn chuỗi Đường dẫn đến một tài liệu được phân tách bằng dấu gạch chéo.
path Segment (Phân đoạn đường dẫn) chuỗi[] Các phân đoạn đường dẫn bổ sung sẽ được áp dụng tương ứng với đối số đầu tiên.

Trường hợp trả lại hàng:

DocumentReference<DocumentData, documentData>

Thực thể DocumentReference.

Trường hợp ngoại lệ

Nếu đường dẫn cuối cùng có số đoạn lẻ và không trỏ đến tài liệu.

getDoc(tài liệu tham khảo)

Đọc tài liệu được tham chiếu bởi tham chiếu tài liệu được chỉ định.

Tất cả tài liệu được tìm nạp trực tiếp từ máy chủ, ngay cả khi tài liệu đã được đọc hoặc sửa đổi trước đó. Nội dung sửa đổi gần đây chỉ được phản ánh trong DocumentSnapshot đã truy xuất nếu phần phụ trợ đã áp dụng các nội dung sửa đổi đó. Nếu ứng dụng không có kết nối mạng, thì quá trình đọc sẽ không thành công. Nếu bạn muốn sử dụng tính năng lưu vào bộ nhớ đệm hoặc xem các nội dung sửa đổi cục bộ, vui lòng sử dụng SDK Firestore đầy đủ.

Chữ ký:

export declare function getDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;

Thông số

Thông số Loại Mô tả
tham chiếu DocumentReference<AppModelType, DbModelType> Tham chiếu của tài liệu cần tìm nạp.

Trường hợp trả lại hàng:

Cam kết<DocumentSnapshot<AppModelType, DbModelType>>

Lời hứa đã được giải quyết bằng DocumentSnapshot chứa nội dung tài liệu hiện tại.

setDoc(tài liệu tham khảo, dữ liệu)

Ghi vào tài liệu được tham chiếu đến DocumentReference được chỉ định. Nếu chưa có, tài liệu sẽ được tạo.

Kết quả của lần ghi này sẽ chỉ được phản ánh trong các lần đọc tài liệu xảy ra sau khi phân giải hàm hứa được trả về. Nếu ứng dụng không có kết nối mạng, thì quá trình ghi sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.

Chữ ký:

export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<void>;

Thông số

Thông số Loại Mô tả
tham chiếu DocumentReference<AppModelType, DbModelType> Tham chiếu đến tài liệu cần viết.
dữ liệu WithFieldValue<AppModelType> Bản đồ các trường và giá trị cho tài liệu.

Trường hợp trả lại hàng:

Lời hứa<vô hiệu>

Promise được phân giải sau khi dữ liệu được ghi thành công vào phần phụ trợ.

Trường hợp ngoại lệ

Lỗi – Nếu thông tin đầu vào mà bạn cung cấp không phải là tài liệu hợp lệ trên Firestore.

setDoc(tài liệu tham khảo, dữ liệu, tuỳ chọn)

Ghi vào tài liệu được tham chiếu đến DocumentReference được chỉ định. Nếu chưa có, tài liệu sẽ được tạo. Nếu cung cấp merge hoặc mergeFields, bạn có thể hợp nhất dữ liệu được cung cấp vào một tài liệu hiện có.

Kết quả của lần ghi này sẽ chỉ được phản ánh trong các lần đọc tài liệu xảy ra sau khi phân giải hàm hứa được trả về. Nếu ứng dụng không có kết nối mạng, thì quá trình ghi sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.

Chữ ký:

export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: PartialWithFieldValue<AppModelType>, options: SetOptions): Promise<void>;

Thông số

Thông số Loại Mô tả
tham chiếu DocumentReference<AppModelType, DbModelType> Tham chiếu đến tài liệu cần viết.
dữ liệu Một phầnWithFieldValue<AppModelType> Bản đồ các trường và giá trị cho tài liệu.
tuỳ chọn SetOptions Đối tượng để định cấu hình hành vi đã đặt.

Trường hợp trả lại hàng:

Lời hứa<vô hiệu>

Promise được phân giải sau khi dữ liệu được ghi thành công vào phần phụ trợ.

Trường hợp ngoại lệ

Lỗi – Nếu thông tin đầu vào mà bạn cung cấp không phải là tài liệu hợp lệ trên Firestore.

updateDoc(tài liệu tham khảo, dữ liệu)

Cập nhật các trường trong tài liệu mà DocumentReference được chỉ định tham chiếu đến. Nội dung cập nhật sẽ không thành công nếu áp dụng cho một tài liệu không tồn tại.

Kết quả của lần cập nhật này sẽ chỉ được phản ánh trong các lần đọc tài liệu xảy ra sau khi phân giải lời hứa được trả về. Nếu máy khách không kết nối mạng, thì quá trình cập nhật sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.

Chữ ký:

export declare function updateDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: UpdateData<DbModelType>): Promise<void>;

Thông số

Thông số Loại Mô tả
tham chiếu DocumentReference<AppModelType, DbModelType> Tham chiếu đến tài liệu cần cập nhật.
dữ liệu UpdateData<DbModelType> Một đối tượng chứa các trường và giá trị cần cập nhật tài liệu. Các trường có thể chứa dấu chấm để tham chiếu đến các trường lồng nhau trong tài liệu.

Trường hợp trả lại hàng:

Lời hứa<vô hiệu>

Promise được phân giải sau khi dữ liệu được ghi thành công vào phần phụ trợ.

Trường hợp ngoại lệ

Lỗi – Nếu dữ liệu đầu vào được cung cấp không phải là dữ liệu Firestore hợp lệ.

updateDoc(tham chiếu; trường; giá trị; moreFieldsAndValues)

Các trường cập nhật trong tài liệu do DocumentReference chỉ định tham chiếu đến. Quá trình cập nhật sẽ không thành công nếu được áp dụng cho một tài liệu không tồn tại.

Bạn có thể cập nhật các trường lồng nhau bằng cách cung cấp các chuỗi đường dẫn trường được phân tách bằng dấu chấm hoặc bằng cách cung cấp các đối tượng FieldPath.

Kết quả của lần cập nhật này sẽ chỉ được phản ánh trong các lần đọc tài liệu xảy ra sau khi phân giải lời hứa được trả về. Nếu máy khách không kết nối mạng, thì quá trình cập nhật sẽ không thành công. Nếu bạn muốn xem nội dung sửa đổi cục bộ hoặc ghi vùng đệm cho đến khi ứng dụng có kết nối mạng, hãy sử dụng toàn bộ SDK Firestore.

Chữ ký:

export declare function updateDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): Promise<void>;

Thông số

Thông số Loại Mô tả
tham chiếu DocumentReference<AppModelType, DbModelType> Tham chiếu đến tài liệu cần cập nhật.
trường chuỗi | FieldPath (Đường dẫn trường) Trường đầu tiên để cập nhật.
value không xác định Giá trị đầu tiên.
moreFieldsAndValues không xác định[] Cặp khoá-giá trị bổ sung.

Trường hợp trả lại hàng:

Lời hứa<vô hiệu>

Promise được phân giải sau khi dữ liệu được ghi thành công vào phần phụ trợ.

Trường hợp ngoại lệ

Lỗi – Nếu dữ liệu đầu vào được cung cấp không phải là dữ liệu Firestore hợp lệ.

chức năng(ảnh chụp nhanh, ...)

endAt(ảnh chụp nhanh)

Tạo một QueryEndAtConstraint để sửa đổi kết quả được đặt thành kết thúc tại tài liệu được cung cấp (bao gồm). Vị trí kết thúc tương ứng với thứ tự của truy vấn. Tài liệu phải chứa tất cả các trường được cung cấp theo thứ tự OrderBy của truy vấn.

Chữ ký:

export declare function endAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;

Thông số

Thông số Loại Mô tả
ảnh chụp nhanh DocumentSnapshot<AppModelType, DbModelType> Ảnh chụp nhanh của tài liệu cần kết thúc vào.

Trường hợp trả lại hàng:

QueryEndAtConstraint

QueryEndAtConstraint để truyền đến query()

endTrước(ảnh chụp nhanh)

Tạo một QueryEndAtConstraint để sửa đổi kết quả đã đặt thành kết thúc trước tài liệu được cung cấp (độc quyền). Vị trí kết thúc tương ứng với thứ tự của truy vấn. Tài liệu phải chứa tất cả các trường được cung cấp theo thứ tự OrderBy của truy vấn.

Chữ ký:

export declare function endBefore<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;

Thông số

Thông số Loại Mô tả
ảnh chụp nhanh DocumentSnapshot<AppModelType, DbModelType> Ảnh chụp nhanh của tài liệu cần kết thúc trước đó.

Trường hợp trả lại hàng:

QueryEndAtConstraint

QueryEndAtConstraint để truyền đến query()

startSau(ảnh chụp nhanh)

Tạo một QueryStartAtConstraint giúp sửa đổi nhóm kết quả để bắt đầu sau tài liệu được cung cấp (độc quyền). Vị trí bắt đầu tương ứng với thứ tự của truy vấn. Tài liệu phải chứa tất cả các trường được cung cấp theo thứ tự OrderBy của truy vấn.

Chữ ký:

export declare function startAfter<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;

Thông số

Thông số Loại Mô tả
ảnh chụp nhanh DocumentSnapshot<AppModelType, DbModelType> Ảnh chụp nhanh của tài liệu để bắt đầu sau đó.

Trường hợp trả lại hàng:

QueryStartAtConstraint

QueryStartAtConstraint để truyền đến query()

startAt(ảnh chụp nhanh)

Tạo một QueryStartAtConstraint nhằm sửa đổi tập hợp kết quả để bắt đầu từ tài liệu đã cung cấp (bao gồm). Vị trí bắt đầu tương ứng với thứ tự của truy vấn. Tài liệu phải chứa tất cả các trường được cung cấp trong orderBy của truy vấn này.

Chữ ký:

export declare function startAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;

Thông số

Thông số Loại Mô tả
ảnh chụp nhanh DocumentSnapshot<AppModelType, DbModelType> Ảnh chụp nhanh của tài liệu để bắt đầu.

Trường hợp trả lại hàng:

QueryStartAtConstraint

QueryStartAtConstraint để truyền đến query().

hàm(giá trị, ...)

vectơ(giá trị)

Tạo một VectorValue mới được tạo bằng bản sao của mảng số đã cho.

Chữ ký:

export declare function vector(values?: number[]): VectorValue;

Thông số

Thông số Loại Mô tả
giá trị số[] Tạo một thực thể VectorValue bằng bản sao của mảng số này.

Trường hợp trả lại hàng:

Giá trị vectơ

Một VectorValue mới được tạo bằng bản sao của mảng số đã cho.

AddPrefixToKeys (Thêm tiền tốTo khoá)

Trả về một tệp ánh xạ mới, trong đó mỗi khoá đều có tiền tố là khoá bên ngoài được thêm vào một dấu chấm.

Chữ ký:

export declare type AddPrefixToKeys<Prefix extends string, T extends Record<string, unknown>> = {
    [K in keyof T & string as `${Prefix}.${K}`]+?: string extends K ? any : T[K];
};

Loại trường tổng hợp

Sự hợp nhất của tất cả các loại AggregateField được Firestore hỗ trợ.

Chữ ký:

export declare type AggregateFieldType = ReturnType<typeof sum> | ReturnType<typeof average> | ReturnType<typeof count>;

AggregateSpecData

Một loại dữ liệu có các khoá được lấy từ AggregateSpec và có giá trị là kết quả của việc tổng hợp do AggregateField tương ứng thực hiện từ dữ liệu đầu vào AggregateSpec.

Chữ ký:

export declare type AggregateSpecData<T extends AggregateSpec> = {
    [P in keyof T]: T[P] extends AggregateField<infer U> ? U : never;
};

Loại tổng hợp

Loại liên kết biểu thị loại tổng hợp cần thực hiện.

Chữ ký:

export declare type AggregateType = 'count' | 'avg' | 'sum';

Trường ChildUpdateField

Trình trợ giúp tính toán các trường lồng nhau cho một loại T1 nhất định. Điều này là cần thiết để phân phối các kiểu hợp nhất như undefined | {...} (xảy ra đối với các đạo cụ không bắt buộc) hoặc {a: A} | {b: B}.

Trong trường hợp sử dụng này, V được dùng để phân phối các kiểu hợp nhất của T[K] trên Record, vì T[K] được đánh giá là một biểu thức và không được phân phối.

Hãy truy cập vào https://www.typescriptlang.org/docs/handbook/advanced-types.html#updatesutive-conditional-types

Chữ ký:

export declare type ChildUpdateFields<K extends string, V> = V extends Record<string, unknown> ? AddPrefixToKeys<K, UpdateData<V>> : never;

Mã lỗi Firestore

Bộ mã trạng thái Firestore. Các mã giống nhau ở những mã được gRPC hiển thị ở đây: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md

Các giá trị có thể có: - 'đã huỷ': Thao tác đã bị huỷ (thường do người gọi thực hiện). – "không xác định": Lỗi không xác định hoặc lỗi từ một miền lỗi khác. – 'Illegal- đối số': Ứng dụng khách chỉ định đối số không hợp lệ. Xin lưu ý rằng thuộc tính này khác với "failed-precondition" (điều kiện tiên quyết không thành công). "đối số không hợp lệ" cho biết các đối số có vấn đề bất kể trạng thái của hệ thống (ví dụ: tên trường không hợp lệ). – "deadline-vượt quá": Thời hạn đã hết trước khi thao tác có thể hoàn tất. Đối với những hoạt động thay đổi trạng thái của hệ thống, lỗi này có thể được trả về ngay cả khi thao tác đã hoàn tất thành công. Ví dụ: một phản hồi thành công từ máy chủ có thể bị trì hoãn đủ lâu đến thời hạn. - 'not-found': Không tìm thấy một số tài liệu được yêu cầu. – "đã-có": Một số tài liệu mà chúng tôi cố gắng tạo đã tồn tại. – 'permission-denied': Phương thức gọi không có quyền thực thi thao tác đã chỉ định. – "tài nguyên đã hết": Một số tài nguyên đã hết, có thể đã đạt đến hạn mức cho mỗi người dùng, hoặc có thể toàn bộ hệ thống tệp đã hết dung lượng. – 'failed-precondition': Thao tác bị từ chối vì hệ thống không ở trạng thái cần thiết để thực thi thao tác. - 'bị huỷ': Thao tác bị huỷ, thường là do sự cố đồng thời như giao dịch bị huỷ, v.v. - 'ngoài phạm vi': Thao tác đã cố gắng vượt quá phạm vi hợp lệ. – "chưa triển khai": Thao tác chưa được triển khai hoặc không được hỗ trợ/bật. – 'internal': Lỗi nội bộ. Có nghĩa là một số bất biến dự kiến của hệ thống cơ bản đã bị hỏng. Nếu bạn thấy một trong những lỗi này, tức là đã xảy ra lỗi. – 'không có sẵn': Dịch vụ hiện không hoạt động. Đây rất có thể là một tình trạng tạm thời và có thể được khắc phục bằng cách thử lại bằng thuật toán thời gian đợi. – "Mất dữ liệu": Mất hoặc hỏng dữ liệu không thể khôi phục. - "chưa được xác thực": Yêu cầu không có thông tin xác thực hợp lệ cho thao tác này.

Chữ ký:

export declare type FirestoreErrorCode = 'cancelled' | 'unknown' | 'invalid-argument' | 'deadline-exceeded' | 'not-found' | 'already-exists' | 'permission-denied' | 'resource-exhausted' | 'failed-precondition' | 'aborted' | 'out-of-range' | 'unimplemented' | 'internal' | 'unavailable' | 'data-loss' | 'unauthenticated';

Trường NestedUpdateField

Đối với mỗi trường (ví dụ: "bar", hãy tìm tất cả các khoá lồng nhau (ví dụ: {'bar.baz': T1, 'bar.qux': T2}). Phân nối chúng với nhau để tạo thành một bản đồ chứa tất cả các khoá có thể có, tất cả được đánh dấu là tuỳ chọn

Chữ ký:

export declare type NestedUpdateFields<T extends Record<string, unknown>> = UnionToIntersection<{
    [K in keyof T & string]: ChildUpdateFields<K, T[K]>;
}[keyof T & string]>;

Sắp xếp theo thứ tự

Hướng của mệnh đề orderBy() được chỉ định là "desc" hoặc "asc" (giảm dần hoặc tăng dần).

Chữ ký:

export declare type OrderByDirection = 'desc' | 'asc';

Một phần với giá trị trường

Tương tự như Partial<T> của TypeScript, nhưng cho phép loại bỏ các trường lồng nhau và chuyển trường giá trị dưới dạng giá trị thuộc tính.

Chữ ký:

export declare type PartialWithFieldValue<T> = Partial<T> | (T extends Primitive ? T : T extends {} ? {
    [K in keyof T]?: PartialWithFieldValue<T[K]> | FieldValue;
} : never);

Nguyên gốc

Kiểu nguyên gốc.

Chữ ký:

export declare type Primitive = string | number | boolean | undefined | null;

Truy vấnConstraintType

Mô tả các quy tắc ràng buộc đối với truy vấn có trong SDK này.

Chữ ký:

export declare type QueryConstraintType = 'where' | 'orderBy' | 'limit' | 'limitToLast' | 'startAt' | 'startAfter' | 'endAt' | 'endBefore';

QueryFilterConstraint

QueryFilterConstraint là một loại liên kết trợ giúp đại diện cho QueryFieldFilterConstraintQueryCompositeFilterConstraint.

Chữ ký:

export declare type QueryFilterConstraint = QueryFieldFilterConstraint | QueryCompositeFilterConstraint;

QueryNonFilterConstraint

QueryNonFilterConstraint là một loại liên kết trợ giúp đại diện cho QueryConstraints dùng để thu hẹp hoặc sắp xếp thứ tự tập hợp tài liệu, nhưng không lọc một trường tài liệu một cách rõ ràng. QueryNonFilterConstraint được tạo bằng cách gọi orderBy(), startAt(), startSau(), endBefore(), endAt(), limit() hoặc limitToLast() và sau đó có thể được truyền đến query() để tạo một phiên bản truy vấn mới {18/.QueryConstraint

Chữ ký:

export declare type QueryNonFilterConstraint = QueryOrderByConstraint | QueryLimitConstraint | QueryStartAtConstraint | QueryEndAtConstraint;

Đặt tuỳ chọn

Đối tượng tuỳ chọn định cấu hình hành vi của setDoc() và các lệnh gọi. Bạn có thể định cấu hình các lệnh gọi này để hợp nhất các chi tiết thay vì ghi đè toàn bộ tài liệu mục tiêu bằng cách cung cấp một SetOptions với merge: true.

Chữ ký:

export declare type SetOptions = {
    readonly merge?: boolean;
} | {
    readonly mergeFields?: Array<string | FieldPath>;
};

Giao điểm liên kết

Cho trước loại hợp nhất U = T1 | T2 | ..., sẽ trả về một loại giao nhau (T1 & T2 & ...).

Sử dụng các loại có điều kiện phân phối và suy luận từ các loại có điều kiện. Phương pháp này hiệu quả vì có nhiều đề xuất cho cùng một biến loại ở các vị trí trái biến khiến hệ thống suy ra loại giao lộ. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-to-intersection-type

Chữ ký:

export declare type UnionToIntersection<U> = (U extends unknown ? (k: U) => void : never) extends (k: infer I) => void ? I : never;

UpdateData

Cập nhật dữ liệu (để sử dụng với updateDoc()) bao gồm các đường dẫn trường (ví dụ: "foo" hoặc "foo.baz") được ánh xạ đến các giá trị. Những trường chứa dấu chấm tham chiếu đến các trường lồng nhau trong tài liệu. Trường giá trị có thể được chuyển vào dưới dạng giá trị thuộc tính.

Chữ ký:

export declare type UpdateData<T> = T extends Primitive ? T : T extends {} ? {
    [K in keyof T]?: UpdateData<T[K]> | FieldValue;
} & NestedUpdateFields<T> : Partial<T>;

nơiFilterOp

Điều kiện lọc trong mệnh đề where() được chỉ định bằng chuỗi '&lt;', '&lt;=', '==', '!=', '&gt;=', '&gt;', 'array-contains', 'in', 'array-contains-any' và 'not-in'.

Chữ ký:

export declare type WhereFilterOp = '<' | '<=' | '==' | '!=' | '>=' | '>' | 'array-contains' | 'in' | 'array-contains-any' | 'not-in';

Với giá trị trường

Cho phép chuyển trường giá trị dưới dạng giá trị thuộc tính trong khi vẫn duy trì an toàn về kiểu.

Chữ ký:

export declare type WithFieldValue<T> = T | (T extends Primitive ? T : T extends {} ? {
    [K in keyof T]: WithFieldValue<T[K]> | FieldValue;
} : never);