Cơ sở dữ liệu theo thời gian thực của Firebase
Hàm
Chức năng | Mô tả |
---|---|
hàm(app, ...) | |
getDatabase(app; url) | Trả về thực thể của SDK cơ sở dữ liệu theo thời gian thực liên kết với FirebaseApp được cung cấp. Khởi chạy một phiên bản mới có chế độ cài đặt mặc định nếu không có phiên bản nào hoặc nếu phiên bản hiện có sử dụng URL cơ sở dữ liệu tuỳ chỉnh. |
hàm(db, ...) | |
connectDatabaseEmulator(db, máy chủ, cổng, các tuỳ chọn) | Sửa đổi thực thể đã cung cấp để giao tiếp với trình mô phỏng Cơ sở dữ liệu theo thời gian thực. Lưu ý: Phương thức này phải được gọi trước khi thực hiện bất kỳ thao tác nào khác. |
goOffline(db) | Ngắt kết nối khỏi máy chủ (tất cả các thao tác với Cơ sở dữ liệu sẽ hoàn tất khi không có mạng).Ứng dụng này tự động duy trì kết nối liên tục với máy chủ cơ sở dữ liệu. Kết nối này sẽ duy trì vô thời hạn và kết nối lại khi bị ngắt kết nối. Tuy nhiên, các phương thức goOffline() và goOnline() có thể được dùng để kiểm soát việc kết nối máy khách trong trường hợp không muốn có một kết nối liên tục.Khi không có mạng, máy khách sẽ không còn nhận được thông tin cập nhật dữ liệu từ Cơ sở dữ liệu nữa. Tuy nhiên, tất cả các thao tác với Cơ sở dữ liệu được thực hiện cục bộ sẽ tiếp tục kích hoạt ngay các sự kiện, cho phép ứng dụng của bạn tiếp tục hoạt động bình thường. Ngoài ra, mỗi thao tác được thực hiện cục bộ sẽ tự động được xếp vào hàng đợi và được thử lại sau khi kết nối lại với máy chủ Cơ sở dữ liệu.Để kết nối lại với Cơ sở dữ liệu và bắt đầu nhận sự kiện từ xa, hãy xem goOnline() . |
goOnline(db) | Kết nối lại với máy chủ và đồng bộ hoá trạng thái Cơ sở dữ liệu ngoại tuyến với trạng thái máy chủ.Bạn nên sử dụng phương thức này sau khi tắt kết nối đang hoạt động với goOffline() . Sau khi kết nối lại, ứng dụng khách này sẽ truyền dữ liệu thích hợp và kích hoạt các sự kiện thích hợp để ứng dụng của bạn có thể "bắt kịp" tự động. |
ref(db; đường dẫn) | Trả về Reference đại diện cho vị trí trong Cơ sở dữ liệu tương ứng với đường dẫn đã cho. Nếu không có đường dẫn nào được cung cấp, Reference sẽ trỏ đến gốc của Cơ sở dữ liệu. |
refFromURL(db; url) | Trả về Reference đại diện cho vị trí trong Cơ sở dữ liệu tương ứng với URL Firebase được cung cấp.Hệ thống sẽ gửi một ngoại lệ nếu URL không phải là URL cơ sở dữ liệu Firebase hợp lệ hoặc có miền khác với phiên bản Database hiện tại.Lưu ý rằng tất cả tham số truy vấn (orderBy , limitToLast , v.v.) đều bị bỏ qua và không được áp dụng cho Reference được trả về. |
hàm() | |
forceLongPolling() | Buộc sử dụng longPolling thay vì websockets. Mã này sẽ bị bỏ qua nếu giao thức websocket được sử dụng trong DatabaseURL. |
forceWebSockets() | Buộc sử dụng websockets thay vì longPolling. |
orderByKey() | Tạo một QueryConstraint mới sắp xếp theo khoá.Sắp xếp kết quả của một truy vấn theo giá trị khoá (tăng dần).Bạn có thể đọc thêm về orderByKey() trong phần Sắp xếp dữ liệu. |
orderByPriority() | Tạo một QueryConstraint mới để sắp xếp theo mức độ ưu tiên.Các ứng dụng không cần dùng mức độ ưu tiên nhưng có thể sắp xếp các bộ sưu tập theo thuộc tính thông thường (xem phần Sắp xếp dữ liệu để biết phương án thay thế cho mức độ ưu tiên. |
orderByValue() | Tạo một QueryConstraint mới sắp xếp theo giá trị.Nếu phần tử con của truy vấn đều là các giá trị vô hướng (chuỗi, số hoặc boolean), thì bạn có thể sắp xếp kết quả theo giá trị (tăng dần).Bạn có thể đọc thêm về orderByValue() trong phần Sắp xếp dữ liệu. |
serverTimestamp() | Trả về một giá trị phần giữ chỗ để tự động điền dấu thời gian hiện tại (thời gian kể từ thời gian bắt đầu của hệ thống Unix, tính bằng mili giây) do máy chủ Firebase xác định. |
hàm(delta, ...) | |
gia tăng(delta) | Trả về một giá trị phần giữ chỗ có thể dùng để tăng giá trị cơ sở dữ liệu hiện tại theo từng tỷ lệ theo delta đã cho. |
hàm(đã bật, ...) | |
enableLogging(đã bật, liên tục) | Ghi nhật ký thông tin gỡ lỗi vào bảng điều khiển. |
hàm(giới hạn, ...) | |
limitToFirst(giới hạn) | Tạo một QueryConstraint mới nếu bị giới hạn ở số lượng phần tử con cụ thể đầu tiên.Phương thức limitToFirst() dùng để đặt số lượng phần tử con tối đa cần đồng bộ hoá cho một lệnh gọi lại nhất định. Nếu đặt giới hạn là 100, ban đầu, chúng tôi sẽ chỉ nhận được tối đa 100 sự kiện child_added . Nếu chúng ta có ít hơn 100 thông báo được lưu trữ trong Cơ sở dữ liệu, thì một sự kiện child_added sẽ kích hoạt cho mỗi thông báo. Tuy nhiên, nếu có hơn 100 thông báo, chúng tôi sẽ chỉ nhận được sự kiện child_added cho 100 thông báo được sắp xếp đầu tiên. Khi mặt hàng thay đổi, chúng tôi sẽ nhận được child_removed sự kiện cho mỗi mặt hàng loại bỏ khỏi danh sách đang hoạt động để tổng số mặt hàng giữ nguyên là 100.Bạn có thể đọc thêm về limitToFirst() trong phần Lọc dữ liệu. |
limitToLast(giới hạn) | Tạo một QueryConstraint mới mà giới hạn chỉ trả về số lượng phần tử con được chỉ định gần đây nhất.Phương thức limitToLast() dùng để thiết lập số lượng phần tử con tối đa cần đồng bộ hoá cho một lệnh gọi lại nhất định. Nếu đặt giới hạn là 100, ban đầu, chúng tôi sẽ chỉ nhận được tối đa 100 sự kiện child_added . Nếu chúng ta có ít hơn 100 thông báo được lưu trữ trong Cơ sở dữ liệu, thì một sự kiện child_added sẽ kích hoạt cho mỗi thông báo. Tuy nhiên, nếu có hơn 100 thông báo, chúng tôi sẽ chỉ nhận sự kiện child_added cho 100 thông báo đã sắp xếp sau cùng. Khi mặt hàng thay đổi, chúng tôi sẽ nhận được child_removed sự kiện cho mỗi mặt hàng loại bỏ khỏi danh sách đang hoạt động để tổng số mặt hàng giữ nguyên là 100.Bạn có thể đọc thêm về limitToLast() trong phần Lọc dữ liệu. |
hàm(logger, ...) | |
enableLogging(logger) | Ghi nhật ký thông tin gỡ lỗi vào bảng điều khiển. |
hàm(mẹ, ...) | |
child(mẹ; đường dẫn) | Nhận Reference cho vị trí tại đường dẫn tương đối được chỉ định.Đường dẫn tương đối có thể là một tên con đơn giản (ví dụ: "ada") hoặc một đường dẫn sâu hơn được phân tách bằng dấu gạch chéo (ví dụ: "ada/name/first"). |
push(parent; value) | Tạo vị trí con mới bằng một khoá duy nhất và trả về Reference của vị trí đó.Đây là mẫu phổ biến nhất để thêm dữ liệu vào tập hợp các mục.Nếu bạn cung cấp giá trị cho push() , thì giá trị sẽ được ghi vào vị trí được tạo. Nếu bạn không truyền một giá trị, sẽ không có nội dung nào được ghi vào cơ sở dữ liệu và thành phần con vẫn trống (nhưng bạn có thể sử dụng Reference ở nơi khác).Các khoá duy nhất do push() tạo được sắp xếp theo thời gian hiện tại, do đó, danh sách các mục thu được được sắp xếp theo trình tự thời gian. Các khoá này cũng được thiết kế để không thể đoán được (chúng chứa 72 bit entropy ngẫu nhiên).Xem phần Thêm vào danh sách dữ liệu. Xem bài viết 2^120 cách để đảm bảo giá trị nhận dạng duy nhất. |
hàm(đường dẫn, ...) | |
orderByChild(đường dẫn) | Tạo một QueryConstraint mới sắp xếp theo khoá con đã chỉ định.Mỗi lần truy vấn chỉ có thể sắp xếp theo một khoá. Việc gọi orderByChild() nhiều lần trên cùng một truy vấn là lỗi.Truy vấn Firebase cho phép bạn sắp xếp dữ liệu của mình một cách nhanh chóng theo bất kỳ khoá con nào. Tuy nhiên, nếu biết trước chỉ mục của mình là gì, bạn có thể xác định chỉ mục qua quy tắc .indexOn trong Quy tắc bảo mật để có hiệu suất tốt hơn. Hãy xem quy tắchttps://firebase.google.com/docs/database/security/indexing-data để biết thêm thông tin.Bạn có thể đọc thêm về orderByChild() trong phần Sắp xếp dữ liệu. |
hàm(truy vấn, ...) | |
get(query) | Nhận kết quả mới nhất cho cụm từ tìm kiếm này. |
off(query, eventType, callback) | Tách một lệnh gọi lại trước đó đã đính kèm với trình nghe on() (onValue , onChildAdded ) tương ứng. Lưu ý: Bạn không nên xoá trình nghe theo cách này. Thay vào đó, vui lòng sử dụng hàm callback được trả về qua các lệnh gọi lại on tương ứng.Huỷ bỏ lệnh gọi lại trước đó đã đính kèm với on*() . Việc gọi off() trên trình nghe gốc sẽ không tự động xoá trình nghe đã đăng ký trên các nút con. off() cũng phải được gọi trên mọi trình nghe con để loại bỏ lệnh gọi lại.Nếu không chỉ định lệnh gọi lại, tất cả lệnh gọi lại cho eventType đã chỉ định sẽ bị xoá. Tương tự, nếu không có eventType nào được chỉ định, thì tất cả lệnh gọi lại cho Reference sẽ bị xoá.Bạn cũng có thể loại bỏ từng trình nghe bằng cách gọi lệnh gọi lại huỷ đăng ký. |
onChildAdded(query, callback, cancelCallback) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm thông tin.Một sự kiện onChildAdded sẽ được kích hoạt một lần cho mỗi trẻ đầu tiên tại vị trí này và sẽ được kích hoạt lại mỗi khi có thêm một trẻ mới. DataSnapshot được truyền vào lệnh gọi lại sẽ phản ánh dữ liệu của thành phần con có liên quan. Để sắp xếp thứ tự, phương thức này được truyền đối số thứ hai. Đây là một chuỗi chứa khoá của con đồng cấp trước đó theo thứ tự sắp xếp hoặc null nếu đó là phần tử con đầu tiên. |
onChildThêm(truy vấn, lệnh gọi lại, tuỳ chọn) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm thông tin.Một sự kiện onChildAdded sẽ được kích hoạt một lần cho mỗi trẻ đầu tiên tại vị trí này và sẽ được kích hoạt lại mỗi khi có thêm một trẻ mới. DataSnapshot được truyền vào lệnh gọi lại sẽ phản ánh dữ liệu của thành phần con có liên quan. Để sắp xếp thứ tự, phương thức này được truyền đối số thứ hai. Đây là một chuỗi chứa khoá của con đồng cấp trước đó theo thứ tự sắp xếp hoặc null nếu đó là phần tử con đầu tiên. |
onChildAdded(query, callback, cancelCallback, các tuỳ chọn) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm thông tin.Một sự kiện onChildAdded sẽ được kích hoạt một lần cho mỗi trẻ đầu tiên tại vị trí này và sẽ được kích hoạt lại mỗi khi có thêm một trẻ mới. DataSnapshot được truyền vào lệnh gọi lại sẽ phản ánh dữ liệu của thành phần con có liên quan. Để sắp xếp thứ tự, phương thức này được truyền đối số thứ hai. Đây là một chuỗi chứa khoá của con đồng cấp trước đó theo thứ tự sắp xếp hoặc null nếu đó là phần tử con đầu tiên. |
onChildChanged(query, callback, cancelCallback) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem phần Truy xuất dữ liệu trên web để biết thêm thông tin.Sự kiện onChildChanged sẽ được kích hoạt khi dữ liệu được lưu trữ trong phần tử con (hoặc bất kỳ thành phần con cháu nào của sự kiện đó) thay đổi. Xin lưu ý rằng một sự kiện child_changed có thể biểu thị nhiều thay đổi đối với phần tử con. DataSnapshot được truyền đến lệnh gọi lại sẽ chứa nội dung con mới. Để sắp xếp thứ tự, lệnh gọi lại cũng được truyền đối số thứ hai. Đối số này là một chuỗi chứa khoá của phần tử con đồng cấp trước đó theo thứ tự sắp xếp hoặc null nếu đó là phần tử con đầu tiên. |
onChildChanged(truy vấn, lệnh gọi lại, tuỳ chọn) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem phần Truy xuất dữ liệu trên web để biết thêm thông tin.Sự kiện onChildChanged sẽ được kích hoạt khi dữ liệu được lưu trữ trong phần tử con (hoặc bất kỳ thành phần con cháu nào của sự kiện đó) thay đổi. Xin lưu ý rằng một sự kiện child_changed có thể biểu thị nhiều thay đổi đối với phần tử con. DataSnapshot được truyền đến lệnh gọi lại sẽ chứa nội dung con mới. Để sắp xếp thứ tự, lệnh gọi lại cũng được truyền đối số thứ hai. Đối số này là một chuỗi chứa khoá của phần tử con đồng cấp trước đó theo thứ tự sắp xếp hoặc null nếu đó là phần tử con đầu tiên. |
onChildChanged(query, callback, cancelCallback, các tuỳ chọn) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem phần Truy xuất dữ liệu trên web để biết thêm thông tin.Sự kiện onChildChanged sẽ được kích hoạt khi dữ liệu được lưu trữ trong phần tử con (hoặc bất kỳ thành phần con cháu nào của sự kiện đó) thay đổi. Xin lưu ý rằng một sự kiện child_changed có thể biểu thị nhiều thay đổi đối với phần tử con. DataSnapshot được truyền đến lệnh gọi lại sẽ chứa nội dung con mới. Để sắp xếp thứ tự, lệnh gọi lại cũng được truyền đối số thứ hai. Đối số này là một chuỗi chứa khoá của phần tử con đồng cấp trước đó theo thứ tự sắp xếp hoặc null nếu đó là phần tử con đầu tiên. |
onChildMoved(truy vấn, lệnh gọi lại, cancelCallback) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm thông tin.Sự kiện onChildMoved sẽ được kích hoạt khi thứ tự sắp xếp của trẻ thay đổi sao cho vị trí tương ứng với các ứng dụng cùng cấp thay đổi. DataSnapshot được truyền vào lệnh gọi lại sẽ dành cho dữ liệu của thành phần con đã di chuyển. Phương thức này cũng được truyền đối số thứ hai là một chuỗi chứa khoá của con đồng cấp trước đó theo thứ tự sắp xếp hoặc null nếu đó là phần tử con đầu tiên. |
onChildMoved(truy vấn, lệnh gọi lại, tuỳ chọn) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm thông tin.Sự kiện onChildMoved sẽ được kích hoạt khi thứ tự sắp xếp của trẻ thay đổi sao cho vị trí tương ứng với các ứng dụng cùng cấp thay đổi. DataSnapshot được truyền vào lệnh gọi lại sẽ dành cho dữ liệu của thành phần con đã di chuyển. Phương thức này cũng được truyền đối số thứ hai là một chuỗi chứa khoá của con đồng cấp trước đó theo thứ tự sắp xếp hoặc null nếu đó là phần tử con đầu tiên. |
onChildMoved(truy vấn, lệnh gọi lại, cancelCallback, tuỳ chọn) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm thông tin.Sự kiện onChildMoved sẽ được kích hoạt khi thứ tự sắp xếp của trẻ thay đổi sao cho vị trí tương ứng với các ứng dụng cùng cấp thay đổi. DataSnapshot được truyền vào lệnh gọi lại sẽ dành cho dữ liệu của thành phần con đã di chuyển. Phương thức này cũng được truyền đối số thứ hai là một chuỗi chứa khoá của con đồng cấp trước đó theo thứ tự sắp xếp hoặc null nếu đó là phần tử con đầu tiên. |
onChildRemoved(truy vấn, lệnh gọi lại, cancelCallback) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm thông tin chi tiết.Một sự kiện onChildRemoved sẽ được kích hoạt một lần mỗi khi có trẻ bị xoá. DataSnapshot được truyền vào lệnh gọi lại sẽ là dữ liệu cũ của thành phần con đã bị xoá. Phần tử con sẽ bị xoá khi:– ứng dụng gọi remove() trên thành phần con đó hoặc một trong các đối tượng cấp trên của thành phần con đó – ứng dụng gọi set(null) trên thành phần con đó hoặc một trong các đối tượng cấp trên của thành phần con đó – thành phần con đó đã xoá tất cả các thành phần con – có một truy vấn đang lọc ra thành phần con (vì thứ tự sắp xếp đã thay đổi hoặc đã đạt đến giới hạn tối đa) |
onChildRemoved(truy vấn, lệnh gọi lại, các tuỳ chọn) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm thông tin chi tiết.Một sự kiện onChildRemoved sẽ được kích hoạt một lần mỗi khi có trẻ bị xoá. DataSnapshot được truyền vào lệnh gọi lại sẽ là dữ liệu cũ của thành phần con đã bị xoá. Phần tử con sẽ bị xoá khi:– ứng dụng gọi remove() trên thành phần con đó hoặc một trong các đối tượng cấp trên của thành phần con đó – ứng dụng gọi set(null) trên thành phần con đó hoặc một trong các đối tượng cấp trên của thành phần con đó – thành phần con đó đã xoá tất cả các thành phần con – có một truy vấn đang lọc ra thành phần con (vì thứ tự sắp xếp đã thay đổi hoặc đã đạt đến giới hạn tối đa) |
onChildRemoved(truy vấn, lệnh gọi lại, cancelCallback, các tuỳ chọn) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm thông tin chi tiết.Một sự kiện onChildRemoved sẽ được kích hoạt một lần mỗi khi có trẻ bị xoá. DataSnapshot được truyền vào lệnh gọi lại sẽ là dữ liệu cũ của thành phần con đã bị xoá. Phần tử con sẽ bị xoá khi:– ứng dụng gọi remove() trên thành phần con đó hoặc một trong các đối tượng cấp trên của thành phần con đó – ứng dụng gọi set(null) trên thành phần con đó hoặc một trong các đối tượng cấp trên của thành phần con đó – thành phần con đó đã xoá tất cả các thành phần con – có một truy vấn đang lọc ra thành phần con (vì thứ tự sắp xếp đã thay đổi hoặc đã đạt đến giới hạn tối đa) |
onValue(query, callback, cancelCallback) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm thông tin.Sự kiện onValue sẽ kích hoạt một lần với dữ liệu ban đầu được lưu trữ tại vị trí này, sau đó kích hoạt lại mỗi khi dữ liệu thay đổi. DataSnapshot được truyền đến lệnh gọi lại sẽ dành cho vị trí mà on() được gọi. Thao tác này sẽ không kích hoạt cho đến khi toàn bộ nội dung được đồng bộ hoá. Nếu không có dữ liệu, vị trí sẽ được kích hoạt bằng một DataSnapshot trống (val() sẽ trả về null ). |
onValue(truy vấn, lệnh gọi lại, tuỳ chọn) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm thông tin.Sự kiện onValue sẽ kích hoạt một lần với dữ liệu ban đầu được lưu trữ tại vị trí này, sau đó kích hoạt lại mỗi khi dữ liệu thay đổi. DataSnapshot được truyền đến lệnh gọi lại sẽ dành cho vị trí mà on() được gọi. Thao tác này sẽ không kích hoạt cho đến khi toàn bộ nội dung được đồng bộ hoá. Nếu không có dữ liệu, vị trí sẽ được kích hoạt bằng một DataSnapshot trống (val() sẽ trả về null ). |
onValue(query, callback, cancelCallback, các tuỳ chọn) | Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.Đây là cách chính để đọc dữ liệu từ một Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm thông tin.Sự kiện onValue sẽ kích hoạt một lần với dữ liệu ban đầu được lưu trữ tại vị trí này, sau đó kích hoạt lại mỗi khi dữ liệu thay đổi. DataSnapshot được truyền đến lệnh gọi lại sẽ dành cho vị trí mà on() được gọi. Thao tác này sẽ không kích hoạt cho đến khi toàn bộ nội dung được đồng bộ hoá. Nếu không có dữ liệu, vị trí sẽ được kích hoạt bằng một DataSnapshot trống (val() sẽ trả về null ). |
query(query, queryConstraints) | Tạo một thực thể Query không thể thay đổi 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(ref, ...) | |
onNgắt kết nối(ref) | Trả về đối tượng OnDisconnect – hãy xem phần Bật các chức năng ngoại tuyến trong JavaScript để biết thêm thông tin về cách sử dụng đối tượng đó. |
remove(ref) | Xoá dữ liệu tại vị trí Cơ sở dữ liệu này.Mọi dữ liệu tại các vị trí con cũng sẽ bị xoá.Ảnh hưởng của việc xoá sẽ xuất hiện ngay lập tức và sự kiện "value" tương ứng sẽ được kích hoạt. Quá trình đồng bộ hoá xoá với máy chủ Firebase cũng sẽ bắt đầu và Promise được trả về sẽ phân giải khi hoàn tất. Nếu được cung cấp, lệnh gọi lại onComplete sẽ được gọi không đồng bộ sau khi quá trình đồng bộ hoá hoàn tất. |
runTransaction(ref; transactionUpdate; options) | Sửa đổi dữ liệu ở vị trí này theo cách nguyên tử.Sửa đổi dữ liệu ở vị trí này theo nguyên tử. Không giống như set() thông thường, chỉ ghi đè dữ liệu bất kể giá trị trước đó, runTransaction() được dùng để sửa đổi giá trị hiện có thành giá trị mới, đảm bảo không có xung đột với các ứng dụng khác ghi vào cùng một vị trí vào cùng một thời điểm.Để thực hiện việc này, bạn truyền runTransaction() một hàm cập nhật dùng để biến đổi giá trị hiện tại thành giá trị mới. Nếu một ứng dụng khác ghi vào vị trí đó trước khi giá trị mới của bạn được ghi thành công, thì hàm cập nhật của bạn sẽ được gọi lại với giá trị hiện tại mới và thao tác ghi sẽ được thử lại. Điều này sẽ xảy ra nhiều lần cho đến khi quá trình ghi thành công mà không có xung đột hoặc bạn huỷ giao dịch bằng cách không trả về một giá trị từ hàm cập nhật.Lưu ý: Việc sửa đổi dữ liệu bằng set() sẽ huỷ mọi giao dịch đang chờ xử lý tại vị trí đó. Vì vậy, bạn nên hết sức cẩn thận nếu kết hợp set() và runTransaction() để cập nhật cùng một dữ liệu.Lưu ý: Khi sử dụng các giao dịch có áp dụng Quy tắc bảo mật và Firebase, hãy lưu ý rằng khách hàng cần có quyền truy cập .read ngoài quyền truy cập .write để thực hiện giao dịch. Điều này là do bản chất phía máy khách của các giao dịch yêu cầu khách hàng đọc dữ liệu để cập nhật có thể giao dịch. |
set(ref; giá trị) | Ghi dữ liệu vào vị trí Cơ sở dữ liệu này.Thao tác này sẽ ghi đè mọi dữ liệu tại vị trí này và tất cả các vị trí con.Tác động của việc ghi sẽ hiển thị ngay lập tức và sự kiện tương ứng ("value", "child_added", v.v.) sẽ được kích hoạt. Quá trình đồng bộ hoá dữ liệu với máy chủ Firebase cũng sẽ bắt đầu và Promise được trả về sẽ phân giải khi hoàn tất. Nếu được cung cấp, lệnh gọi lại onComplete sẽ được gọi không đồng bộ sau khi quá trình đồng bộ hoá hoàn tất.Việc truyền null cho giá trị mới tương đương với việc gọi remove() ; cụ thể là tất cả dữ liệu tại vị trí này và tất cả vị trí con đều sẽ bị xóa.set() sẽ xóa mọi mức độ ưu tiên được lưu trữ tại vị trí này, vì vậy nếu mức độ ưu tiên cần được duy trì, bạn cần sử dụng setWithPriority() thay thế.Lưu ý rằng việc sửa đổi dữ liệu với set() sẽ hủy mọi giao dịch đang chờ xử lý tại vị trí đó. Vì vậy, hãy hết sức cẩn thận nếu kết hợp set() và transaction() để sửa đổi cùng một dữ liệu.Một set() sẽ tạo ra một "giá trị" duy nhất. sự kiện tại vị trí thực hiện set() . |
setPriority(ref; ưu tiên) | Đặt mức độ ưu tiên cho dữ liệu tại vị trí Cơ sở dữ liệu này.Các ứng dụng không cần dùng mức độ ưu tiên nhưng có thể sắp xếp các tập hợp theo thuộc tính thông thường (xem phần Sắp xếp và lọc dữ liệu). |
setWithPriority(tham chiếu, giá trị, mức độ ưu tiên) | Ghi dữ liệu vị trí Cơ sở dữ liệu. Giống như set() nhưng cũng chỉ định mức độ ưu tiên cho dữ liệu đó.Các ứng dụng không cần sử dụng mức độ ưu tiên nhưng có thể sắp xếp các bộ sưu tập theo thuộc tính thông thường (xem phần Sắp xếp và lọc dữ liệu ). |
update(ref; giá trị) | Ghi nhiều giá trị vào Cơ sở dữ liệu cùng một lúc.Đối số values chứa nhiều cặp thuộc tính-giá trị sẽ được ghi vào Cơ sở dữ liệu cùng nhau. Mỗi thuộc tính con có thể là một thuộc tính đơn giản (ví dụ: "name") hoặc một đường dẫn tương đối (ví dụ: "name/first") từ vị trí hiện tại đến dữ liệu cần cập nhật.Trái ngược với phương thức set() , bạn chỉ có thể dùng update() để cập nhật có chọn lọc các thuộc tính được tham chiếu tại vị trí hiện tại (thay vì thay thế tất cả các thuộc tính con ở vị trí hiện tại).Hiệu ứng của thao tác ghi sẽ xuất hiện ngay lập tức, và các sự kiện tương ứng ("child_value" sẽ xuất hiện. Quá trình đồng bộ hoá dữ liệu với máy chủ Firebase cũng sẽ bắt đầu và Promise được trả về sẽ phân giải khi hoàn tất. Nếu được cung cấp, lệnh gọi lại onComplete sẽ được gọi không đồng bộ sau khi quá trình đồng bộ hoá hoàn tất.Một update() duy nhất sẽ tạo một "giá trị" duy nhất sự kiện tại vị trí nơi update() được thực hiện, bất kể có bao nhiêu phần tử con được sửa đổi.Lưu ý rằng việc sửa đổi dữ liệu bằng update() sẽ huỷ mọi giao dịch đang chờ xử lý tại vị trí đó. Vì vậy, bạn nên hết sức cẩn thận nếu kết hợp update() và transaction() để sửa đổi cùng một dữ liệu.Chuyển null cho update() sẽ xoá dữ liệu tại vị trí này.Xem Giới thiệu về thông tin cập nhật nhiều vị trí và thông tin khác. |
hàm(value, ...) | |
endAt(giá trị; khoá) | Tạo QueryConstraint có điểm kết thúc đã chỉ định.Bằng cách sử dụng startAt() , startAfter() , endBefore() , endAt() và equalTo() cho phép bạn chọn điểm xuất phát và điểm kết thúc tuỳ ý cho truy vấn.Điểm cuối là toàn bộ, do đó, truy vấn con có giá trị chính xác được chỉ định sẽ được đưa vào truy vấn. Bạn có thể dùng đối số khoá không bắt buộc để giới hạn thêm phạm vi của truy vấn. Nếu được chỉ định, thì những con có giá trị được chỉ định chính xác cũng phải có tên khoá nhỏ hơn hoặc bằng khoá đã chỉ định.Bạn có thể đọc thêm về endAt() trong phần Lọc dữ liệu. |
endBefore(giá trị; khoá) | Tạo QueryConstraint với điểm cuối đã chỉ định (không bao gồm điểm cuối).Việc sử dụng startAt() , startAfter() , endBefore() , endAt() và equalTo() cho phép bạn chọn điểm bắt đầu và điểm kết thúc tuỳ ý cho truy vấn.Chỉ có thể chọn điểm kết thúc. Nếu bạn chỉ cung cấp một giá trị, truy vấn con có giá trị nhỏ hơn giá trị được chỉ định sẽ được đưa vào truy vấn. Nếu một khoá được chỉ định, thì con phải có giá trị nhỏ hơn hoặc bằng giá trị đã chỉ định và tên khoá nhỏ hơn khoá được chỉ định. |
equalTo(giá trị; khoá) | Tạo một QueryConstraint chứa các phần tử con khớp với giá trị đã chỉ định.Khi sử dụng startAt() , startAfter() , endBefore() , endAt() và equalTo() , bạn có thể chọn điểm bắt đầu và điểm kết thúc tuỳ ý cho truy vấn.Bạn có thể dùng đối số khoá không bắt buộc để giới hạn thêm phạm vi của truy vấn. Nếu được chỉ định thì các phần tử con có giá trị được chỉ định chính xác cũng phải có đúng khoá được chỉ định làm tên khoá. Bạn có thể sử dụng tính năng này để lọc các tập hợp kết quả có nhiều kết quả trùng khớp cho cùng một giá trị.Bạn có thể đọc thêm về equalTo() trong phần Lọc dữ liệu. |
startSau(giá_trị; khoá) | Tạo QueryConstraint với điểm xuất phát đã chỉ định (không bao gồm điểm xuất phát).Việc sử dụng startAt() , startAfter() , endBefore() , endAt() và equalTo() cho phép bạn chọn điểm xuất phát và điểm kết thúc tuỳ ý cho truy vấn.Bạn chỉ cần chọn điểm xuất phát đó. Nếu bạn chỉ cung cấp một giá trị, truy vấn con có giá trị lớn hơn giá trị được chỉ định sẽ được đưa vào truy vấn. Nếu một khoá được chỉ định, thì con phải có giá trị lớn hơn hoặc bằng giá trị đã chỉ định và tên khoá lớn hơn khoá được chỉ định. |
startAt(giá_trị; khoá) | Tạo QueryConstraint với điểm xuất phát đã chỉ định.Khi sử dụng startAt() , startAfter() , endBefore() , endAt() và equalTo() , bạn có thể chọn điểm xuất phát và điểm kết thúc tuỳ ý cho truy vấn.Điểm bắt đầu là toàn bộ, do đó, truy vấn con có giá trị chính xác được chỉ định sẽ được đưa vào truy vấn. Bạn có thể dùng đối số khoá không bắt buộc để giới hạn thêm phạm vi của truy vấn. Nếu được chỉ định, thì những con có giá trị được chỉ định chính xác cũng phải có tên khoá lớn hơn hoặc bằng khoá đã chỉ định.Bạn có thể đọc thêm về startAt() trong phần Lọc dữ liệu. |
Lớp học
Hạng | Mô tả |
---|---|
Cơ sở dữ liệu | Lớp đại diện cho một Cơ sở dữ liệu theo thời gian thực của Firebase. |
Ảnh chụp nhanh về dữ liệu | DataSnapshot chứa dữ liệu từ vị trí Cơ sở dữ liệu.Bất cứ khi nào đọc dữ liệu từ Cơ sở dữ liệu, bạn sẽ nhận được dữ liệu dưới dạng DataSnapshot . DataSnapshot được chuyển đến các lệnh gọi lại sự kiện mà bạn đính kèm bằng on() hoặc once() . Bạn có thể trích xuất nội dung của bản tổng quan nhanh dưới dạng đối tượng JavaScript bằng cách gọi phương thức val() . Ngoài ra, bạn có thể chuyển vào ảnh chụp nhanh bằng cách gọi child() để trả về ảnh chụp nhanh con (sau đó bạn có thể gọi val() trên).DataSnapshot là một bản sao dữ liệu bất biến được tạo một cách hiệu quả tại vị trí Cơ sở dữ liệu. Phương thức này không thể sửa đổi và sẽ không bao giờ thay đổi (để sửa đổi dữ liệu, bạn luôn gọi phương thức set() trực tiếp trên Reference ). |
Bật tính năng ngắt kết nối | Lớp onDisconnect cho phép bạn ghi hoặc xoá dữ liệu khi ứng dụng của bạn ngắt kết nối khỏi Máy chủ cơ sở dữ liệu. Các quá trình cập nhật này diễn ra cho dù ứng dụng của bạn có ngắt kết nối một cách dễ dàng hay không, vì vậy, bạn có thể dựa vào các ứng dụng này để dọn dẹp dữ liệu ngay cả khi kết nối bị gián đoạn hoặc ứng dụng gặp sự cố.Lớp onDisconnect thường dùng để quản lý sự hiện diện trong các ứng dụng hữu ích trong việc phát hiện số lượng ứng dụng được kết nối và thời điểm các ứng dụng khác ngắt kết nối. Xem phần Bật chức năng ngoại tuyến trong JavaScript để biết thêm thông tin.Để tránh sự cố khi kết nối bị gián đoạn trước khi yêu cầu có thể được chuyển tới máy chủ Cơ sở dữ liệu, các hàm này phải được gọi trước khi ghi bất kỳ dữ liệu nào.Lưu ý rằng các thao tác onDisconnect chỉ được kích hoạt một lần. Nếu muốn một thao tác nào đó diễn ra mỗi khi tình trạng ngắt kết nối xảy ra, bạn cần phải thiết lập lại các thao tác của onDisconnect mỗi khi kết nối lại. |
QueryConstraint | QueryConstraint dùng để thu hẹp tập hợp tài liệu do truy vấn Cơ sở dữ liệu trả về. QueryConstraint Bạn QueryConstraint sẽ được tạo bằng lúc gọi endAt(), |
transactionResult | Một loại cho giá trị phân giải của runTransaction(). |
Giao diện
Giao diện | Mô tả |
---|---|
DatabaseReference (Tham chiếu cơ sở dữ liệu) | DatabaseReference đại diện cho một vị trí cụ thể trong Cơ sở dữ liệu và có thể dùng để đọc hoặc ghi dữ liệu vào vị trí Cơ sở dữ liệu đó.Bạn có thể tham chiếu vị trí gốc hoặc vị trí con trong Cơ sở dữ liệu của mình bằng cách gọi ref() hoặc ref("child/path") .Việc ghi được thực hiện bằng phương thức set() và có thể đọc bằng phương thức on*() . Hãy truy cập vào https://firebase.google.com/docs/database/web/read-and-write |
IteratedDataSnapshot | Biểu thị ảnh chụp nhanh con của Reference đang được lặp lại. Khoá sẽ không bao giờ là không xác định. |
NgheTuỳ chọn | Đối tượng tuỳ chọn có thể dùng để tuỳ chỉnh trình nghe. |
Cụm từ tìm kiếm | Query sắp xếp và lọc dữ liệu tại vị trí Cơ sở dữ liệu để chỉ đưa vào một nhóm nhỏ dữ liệu con. Bạn có thể dùng tính năng này để sắp xếp một tập hợp dữ liệu theo một số thuộc tính (ví dụ: chiều cao của khủng long) cũng như để hạn chế một danh sách gồm số lượng lớn các mục (ví dụ: tin nhắn trò chuyện) xuống một số lượng phù hợp để đồng bộ hoá với ứng dụng. Các truy vấn được tạo bằng cách chuỗi một hoặc nhiều phương thức lọc được xác định ở đây lại với nhau.Giống như DatabaseReference , bạn có thể nhận dữ liệu từ Query bằng cách sử dụng các phương thức on*() . Bạn sẽ chỉ nhận được các sự kiện và DataSnapshot cho tập hợp con dữ liệu khớp với truy vấn của bạn.Hãy xem https://firebase.google.com/docs/database/web/lists-of-data#sorting_and_filtering_data để biết thêm thông tin. |
Tham chiếu có thể sử dụng | Promise cũng có thể hoạt động như một DatabaseReference khi được push() trả về. Tệp tham chiếu xuất hiện ngay lập tức và Promise sẽ phân giải khi quá trình ghi vào phần phụ trợ hoàn tất. |
Giao dịch | Đối tượng tuỳ chọn để định cấu hình giao dịch. |
Nhập bí danh
Nhập bí danh | Mô tả |
---|---|
EventType | Một trong các chuỗi sau: "value", "child_Add", "child_thay đổi", "child_removed" hoặc "child_moved". |
QueryConstraintType | Mô tả các quy tắc ràng buộc đối với truy vấn có trong SDK này. |
Huỷ đăng ký | Lệnh gọi lại có thể được gọi để xoá một trình nghe. |
function(app, ...)
getDatabase(ứng dụng; url)
Trả về thực thể của SDK cơ sở dữ liệu theo thời gian thực liên kết với FirebaseApp được cung cấp. Khởi chạy một phiên bản mới có chế độ cài đặt mặc định nếu không có phiên bản nào hoặc nếu phiên bản hiện có sử dụng URL cơ sở dữ liệu tuỳ chỉnh.
Chữ ký:
export declare function getDatabase(app?: FirebaseApp, url?: string): Database;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
ứng dụng | Ứng dụng Firebase | Thực thể FirebaseApp liên kết với thực thể của Cơ sở dữ liệu theo thời gian thực được trả về. |
url | chuỗi | URL của thực thể Cơ sở dữ liệu theo thời gian thực cần kết nối. Nếu không được cung cấp, SDK sẽ kết nối với phiên bản mặc định của ứng dụng Firebase. |
Trường hợp trả lại hàng:
Thực thể Database
của ứng dụng đã cung cấp.
function(db, ...)
connectDatabaseEmulator(db, máy chủ, cổng, các tuỳ chọn)
Sửa đổi thực thể đã cung cấp để giao tiếp với trình mô phỏng Cơ sở dữ liệu theo thời gian thực.
Lưu ý: Phương thức này phải được gọi trước khi thực hiện bất kỳ thao tác nào khác.
Chữ ký:
export declare function connectDatabaseEmulator(db: Database, host: string, port: number, options?: {
mockUserToken?: EmulatorMockTokenOptions | string;
}): void;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
cơ sở dữ liệu | Cơ sở dữ liệu | Thực thể cần sửa đổi. |
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ụ: 8080) |
tuỳ chọn | { mockUserToken?: EmulatorMockTokenOptions | chuỗi; } |
Trường hợp trả lại hàng:
trống
goOffline(db)
Ngắt kết nối khỏi máy chủ (tất cả các thao tác với Cơ sở dữ liệu sẽ được hoàn tất ngoại tuyến).
Ứng dụng này tự động duy trì kết nối liên tục với máy chủ Cơ sở dữ liệu. Máy chủ này sẽ hoạt động vô thời hạn và kết nối lại khi bị ngắt kết nối. Tuy nhiên, bạn có thể dùng các phương thức goOffline()
và goOnline()
để kiểm soát kết nối ứng dụng trong trường hợp không muốn có kết nối liên tục.
Khi ngoại tuyến, máy khách sẽ không còn nhận được nội dung cập nhật dữ liệu từ Cơ sở dữ liệu. Tuy nhiên, tất cả các thao tác với Cơ sở dữ liệu được thực hiện cục bộ sẽ tiếp tục kích hoạt ngay các sự kiện, cho phép ứng dụng của bạn tiếp tục hoạt động bình thường. Ngoài ra, mỗi thao tác được thực hiện cục bộ sẽ tự động được xếp vào hàng đợi và được thử lại khi kết nối lại với máy chủ cơ sở dữ liệu.
Để kết nối lại với Cơ sở dữ liệu và bắt đầu nhận sự kiện từ xa, hãy xem goOnline()
.
Chữ ký:
export declare function goOffline(db: Database): void;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
cơ sở dữ liệu | Cơ sở dữ liệu | Thực thể cần ngắt kết nối. |
Trường hợp trả lại hàng:
trống
goOnline(db)
Kết nối lại với máy chủ và đồng bộ hoá trạng thái Cơ sở dữ liệu ngoại tuyến với trạng thái máy chủ.
Bạn nên sử dụng phương thức này sau khi tắt kết nối đang hoạt động với goOffline()
. Sau khi kết nối lại, ứng dụng khách này sẽ truyền dữ liệu thích hợp và kích hoạt các sự kiện thích hợp để ứng dụng của bạn có thể "bắt kịp" tự động.
Chữ ký:
export declare function goOnline(db: Database): void;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
cơ sở dữ liệu | Cơ sở dữ liệu | Thực thể cần kết nối lại. |
Trường hợp trả lại hàng:
trống
ref(db; đường dẫn)
Trả về Reference
đại diện cho vị trí trong Cơ sở dữ liệu tương ứng với đường dẫn đã cho. Nếu không có đường dẫn nào được cung cấp, Reference
sẽ trỏ đến gốc của Cơ sở dữ liệu.
Chữ ký:
export declare function ref(db: Database, path?: string): DatabaseReference;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
cơ sở dữ liệu | Cơ sở dữ liệu | Thực thể của cơ sở dữ liệu để lấy thông tin tham chiếu. |
đường dẫn | chuỗi | Đường dẫn không bắt buộc đại diện cho vị trí mà Reference được trả về sẽ trỏ đến. Nếu không được cung cấp, Reference được trả về sẽ trỏ đến gốc của Cơ sở dữ liệu. |
Trường hợp trả lại hàng:
DatabaseReference (Tham chiếu cơ sở dữ liệu)
Nếu bạn cung cấp đường dẫn, thì Reference
sẽ trỏ đến đường dẫn đó. Nếu không, Reference
sẽ trỏ đến gốc của Cơ sở dữ liệu.
refFromURL(db; url)
Trả về Reference
biểu thị vị trí trong Cơ sở dữ liệu tương ứng với URL Firebase được cung cấp.
Hệ thống sẽ gửi cho bạn một trường hợp ngoại lệ nếu URL đó không phải là URL cơ sở dữ liệu Firebase hợp lệ hoặc có miền khác với phiên bản Database
hiện tại.
Xin lưu ý rằng tất cả tham số truy vấn (orderBy
, limitToLast
, v.v.) đều bị bỏ qua và không được áp dụng cho Reference
được trả về.
Chữ ký:
export declare function refFromURL(db: Database, url: string): DatabaseReference;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
cơ sở dữ liệu | Cơ sở dữ liệu | Thực thể của cơ sở dữ liệu để lấy thông tin tham chiếu. |
url | chuỗi | URL Firebase mà Reference được trả về sẽ trỏ đến. |
Trường hợp trả lại hàng:
DatabaseReference (Tham chiếu cơ sở dữ liệu)
Reference
trỏ đến URL Firebase đã cung cấp.
Hàm()
forceLongPolling()
Buộc sử dụng longPolling thay vì websockets. Mã này sẽ bị bỏ qua nếu giao thức websocket được sử dụng trong DatabaseURL.
Chữ ký:
export declare function forceLongPolling(): void;
Trường hợp trả lại hàng:
trống
forceWebSockets()
Buộc sử dụng websockets thay vì longPolling.
Chữ ký:
export declare function forceWebSockets(): void;
Trường hợp trả lại hàng:
trống
thứ tựByKey()
Tạo một QueryConstraint
mới sắp xếp theo khoá.
Sắp xếp kết quả của một truy vấn theo giá trị khoá (tăng dần).
Bạn có thể đọc thêm về orderByKey()
trong phần Sắp xếp dữ liệu.
Chữ ký:
export declare function orderByKey(): QueryConstraint;
Trường hợp trả lại hàng:
thứ tựByPriority()
Tạo một QueryConstraint
mới để sắp xếp theo mức độ ưu tiên.
Ứng dụng không cần dùng mức độ ưu tiên nhưng có thể sắp xếp các bộ sưu tập theo thuộc tính thông thường (xem phần Sắp xếp dữ liệu để biết các phương án thay thế cho mức độ ưu tiên.
Chữ ký:
export declare function orderByPriority(): QueryConstraint;
Trường hợp trả lại hàng:
thứ tựByValue()
Tạo một QueryConstraint
mới sẽ sắp xếp theo giá trị.
Nếu phần tử con của truy vấn là tất cả các giá trị vô hướng (chuỗi, số hoặc boolean), bạn có thể sắp xếp kết quả theo giá trị (tăng dần) của chúng.
Bạn có thể đọc thêm về orderByValue()
trong phần Sắp xếp dữ liệu.
Chữ ký:
export declare function orderByValue(): QueryConstraint;
Trường hợp trả lại hàng:
máy chủDấu thời gian()
Trả về một giá trị phần giữ chỗ để tự động điền dấu thời gian hiện tại (thời gian kể từ thời gian bắt đầu của hệ thống Unix, tính bằng mili giây) do máy chủ Firebase xác định.
Chữ ký:
export declare function serverTimestamp(): object;
Trường hợp trả lại hàng:
đối tượng
hàm(delta, ...)
gia số(delta)
Trả về một giá trị phần giữ chỗ có thể dùng để tăng giá trị cơ sở dữ liệu hiện tại theo từng tỷ lệ theo delta đã cho.
Chữ ký:
export declare function increment(delta: number): object;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
delta | số | số tiền cần sửa đổi giá trị hiện tại theo từng nguyên tử. |
Trường hợp trả lại hàng:
đối tượng
Một giá trị phần giữ chỗ để sửa đổi dữ liệu ở phía máy chủ theo tỷ lệ.
hàm(đã bật, ...)
enableLogging(đã bật, liên tục)
Ghi nhật ký thông tin gỡ lỗi vào bảng điều khiển.
Chữ ký:
export declare function enableLogging(enabled: boolean, persistent?: boolean): any;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
đã bật | boolean | Bật tính năng ghi nhật ký nếu true , tắt tính năng ghi nhật ký nếu false . |
liên tục | boolean | Ghi nhớ trạng thái ghi nhật ký giữa các lần làm mới trang nếu true . |
Trường hợp trả lại hàng:
bất kỳ
hàm(giới hạn, ...)
limitToFirst(giới hạn)
Tạo một QueryConstraint
mới nếu bị giới hạn ở số lượng phần tử con cụ thể đầu tiên.
Phương thức limitToFirst()
dùng để thiết lập số lượng phần tử con tối đa cần đồng bộ hoá cho một lệnh gọi lại nhất định. Nếu đặt giới hạn là 100, ban đầu, chúng tôi sẽ chỉ nhận được tối đa 100 sự kiện child_added
. Nếu chúng ta có ít hơn 100 thông báo được lưu trữ trong Cơ sở dữ liệu, thì một sự kiện child_added
sẽ kích hoạt cho mỗi thông báo. Tuy nhiên, nếu có hơn 100 thông báo, chúng tôi sẽ chỉ nhận được sự kiện child_added
cho 100 thông báo được sắp xếp đầu tiên. Khi mặt hàng thay đổi, chúng tôi sẽ nhận được child_removed
sự kiện cho mỗi mặt hàng bị loại khỏi danh sách đang hoạt động để tổng số mặt hàng vẫn là 100.
Bạn có thể đọc thêm về limitToFirst()
trong bài viết Lọc dữ liệu.
Chữ ký:
export declare function limitToFirst(limit: number): QueryConstraint;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
giới hạn | số | Số lượng nút tối đa có thể đưa vào truy vấn này. |
Trường hợp trả lại hàng:
limitToLast(giới hạn)
Tạo một QueryConstraint
mới và chỉ trả về số phần tử con được chỉ định gần đây nhất.
Phương thức limitToLast()
dùng để thiết lập số lượng phần tử con tối đa cần đồng bộ hoá cho một lệnh gọi lại nhất định. Nếu đặt giới hạn là 100, ban đầu, chúng tôi sẽ chỉ nhận được tối đa 100 sự kiện child_added
. Nếu chúng ta có ít hơn 100 thông báo được lưu trữ trong Cơ sở dữ liệu, thì một sự kiện child_added
sẽ kích hoạt cho mỗi thông báo. Tuy nhiên, nếu có hơn 100 thông báo, chúng tôi sẽ chỉ nhận sự kiện child_added
cho 100 thông báo đã sắp xếp sau cùng. Khi mặt hàng thay đổi, chúng tôi sẽ nhận được child_removed
sự kiện cho mỗi mặt hàng bị loại khỏi danh sách đang hoạt động để tổng số mặt hàng vẫn là 100.
Bạn có thể đọc thêm về limitToLast()
trong bài viết Lọc dữ liệu.
Chữ ký:
export declare function limitToLast(limit: number): QueryConstraint;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
giới hạn | số | Số lượng nút tối đa có thể đưa vào truy vấn này. |
Trường hợp trả lại hàng:
hàm(trình ghi nhật ký, ...)
enableLogging(trình ghi nhật ký)
Ghi nhật ký thông tin gỡ lỗi vào bảng điều khiển.
Chữ ký:
export declare function enableLogging(logger: (message: string) => unknown): any;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
trình ghi nhật ký | (thông báo: chuỗi) => không xác định | Chức năng trình ghi nhật ký tuỳ chỉnh để kiểm soát cách ghi nhật ký mọi thứ. |
Trường hợp trả lại hàng:
bất kỳ
function(mẹ, ...)
con(mẹ; đường dẫn)
Lấy Reference
cho vị trí tại đường dẫn tương đối được chỉ định.
Đường dẫn tương đối có thể là một tên con đơn giản (ví dụ: "ada") hoặc một đường dẫn sâu hơn được phân tách bằng dấu gạch chéo (ví dụ: "ada/name/first").
Chữ ký:
export declare function child(parent: DatabaseReference, path: string): DatabaseReference;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
mẹ | DatabaseReference (Tham chiếu cơ sở dữ liệu) | Vị trí của cha mẹ. |
đường dẫn | chuỗi | Đường dẫn tương đối từ vị trí này đến vị trí con mong muốn. |
Trường hợp trả lại hàng:
DatabaseReference (Tham chiếu cơ sở dữ liệu)
Vị trí con được chỉ định.
đẩy(mẹ; giá trị)
Tạo một vị trí con mới bằng cách sử dụng một khoá duy nhất và trả về Reference
của vị trí đó.
Đây là mẫu phổ biến nhất để thêm dữ liệu vào một tập hợp các mục.
Nếu bạn cung cấp một giá trị cho push()
, thì giá trị đó sẽ được ghi vào vị trí đã tạo. Nếu bạn không truyền một giá trị, thì sẽ không có nội dung nào được ghi vào cơ sở dữ liệu và thành phần con vẫn trống (nhưng bạn có thể sử dụng Reference
ở nơi khác).
Các khoá duy nhất do push()
tạo được sắp xếp theo thời gian hiện tại. Vì vậy, danh sách các mục thu được được sắp xếp theo thứ tự thời gian. Các khoá này cũng được thiết kế để không thể đoán được (chúng chứa 72 bit entropy ngẫu nhiên).
Xem phần Thêm vào danh sách dữ liệu. Xem bài viết 2^120 cách để đảm bảo giá trị nhận dạng duy nhất.
Chữ ký:
export declare function push(parent: DatabaseReference, value?: unknown): ThenableReference;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
mẹ | DatabaseReference (Tham chiếu cơ sở dữ liệu) | Vị trí của cha mẹ. |
value | không xác định | Giá trị không bắt buộc sẽ được ghi tại vị trí đã tạo. |
Trường hợp trả lại hàng:
Promise
và Reference
kết hợp; phân giải khi quá trình ghi hoàn tất nhưng có thể được dùng ngay như Reference
vào vị trí con.
hàm(đường dẫn, ...)
orderByChild(đường dẫn)
Tạo một QueryConstraint
mới sắp xếp theo khoá con đã chỉ định.
Mỗi lần, bạn chỉ có thể sắp xếp các truy vấn theo một khoá. Xảy ra lỗi khi gọi orderByChild()
nhiều lần cho cùng một truy vấn.
Truy vấn Firebase cho phép bạn sắp xếp dữ liệu của mình theo bất kỳ khoá con nào một cách nhanh chóng. Tuy nhiên, nếu biết trước chỉ mục của mình là gì, bạn có thể xác định chỉ mục qua quy tắc .indexOn trong Quy tắc bảo mật để có hiệu suất tốt hơn. Hãy xem quy tắc https://firebase.google.com/docs/database/security/indexing-data để biết thêm thông tin.
Bạn có thể đọc thêm về orderByChild()
trong phần Sắp xếp dữ liệu.
Chữ ký:
export declare function orderByChild(path: string): QueryConstraint;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
đường dẫn | chuỗi | Đường dẫn sắp xếp thứ tự. |
Trường hợp trả lại hàng:
function(truy vấn, ...)
get(truy vấn)
Nhận kết quả mới nhất cho cụm từ tìm kiếm này.
Chữ ký:
export declare function get(query: Query): Promise<DataSnapshot>;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
Trường hợp trả lại hàng:
Cam kết<DataSnapshot>
Promise
phân giải thành DataSnapshot thu được nếu có giá trị hoặc từ chối nếu ứng dụng không thể trả về một giá trị (ví dụ: nếu không truy cập được máy chủ và không có nội dung nào được lưu vào bộ nhớ đệm).
tắt(truy vấn, Loại sự kiện, lệnh gọi lại)
Tách một lệnh gọi lại trước đó đã đính kèm với trình nghe on*()
(onValue
, onChildAdded
) tương ứng. Lưu ý: Bạn không nên xoá trình nghe theo cách này. Thay vào đó, vui lòng sử dụng hàm callback được trả về từ các lệnh gọi lại on*
tương ứng.
Tách một lệnh gọi lại trước đó đã đính kèm với on*()
. Việc gọi off()
trên trình nghe gốc sẽ không tự động xoá trình nghe đã đăng ký trên các nút con. off()
cũng phải được gọi trên mọi trình nghe con để loại bỏ lệnh gọi lại.
Nếu không chỉ định một lệnh gọi lại, mọi lệnh gọi lại cho eventType đã chỉ định sẽ bị xoá. Tương tự, nếu không có eventType nào được chỉ định, tất cả lệnh gọi lại cho Reference
sẽ bị xoá.
Bạn cũng có thể loại bỏ từng trình nghe bằng cách gọi lệnh gọi lại huỷ đăng ký.
Chữ ký:
export declare function off(query: Query, eventType?: EventType, callback?: (snapshot: DataSnapshot, previousChildName?: string | null) => unknown): void;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn mà trình nghe đã được đăng ký. |
eventType | EventType | Một trong các chuỗi sau: "value", "child_Add", "child_thay đổi", "child_removed" hoặc "child_moved". Nếu bạn bỏ qua, mọi lệnh gọi lại cho Reference sẽ bị xoá. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot, previousChildName?: string | null) => không xác định | Hàm callback đã được truyền đến on() hoặc undefined để xoá tất cả các lệnh gọi lại. |
Trường hợp trả lại hàng:
trống
onChildThêm(truy vấn, lệnh gọi lại, cancelCallback)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Một sự kiện onChildAdded
sẽ được kích hoạt một lần cho mỗi nhà xuất bản con ban đầu tại vị trí này và sẽ được kích hoạt lại mỗi khi có thêm một thành phần con mới. DataSnapshot
được truyền vào lệnh gọi lại sẽ phản ánh dữ liệu của thành phần con có liên quan. Để sắp xếp thứ tự, phương thức này được truyền đối số thứ hai. Đây là một chuỗi chứa khoá của con đồng cấp trước đó theo thứ tự sắp xếp hoặc null
nếu đó là phần tử con đầu tiên.
Chữ ký:
export declare function onChildAdded(query: Query, callback: (snapshot: DataSnapshot, previousChildName?: string | null) => unknown, cancelCallback?: (error: Error) => unknown): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot, previousChildName?: string | null) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot và một chuỗi chứa khoá của thành phần con trước, theo thứ tự sắp xếp hoặc null nếu đó là thành phần con đầu tiên. |
cancelCallback | (lỗi: Lỗi) => không xác định | Lệnh gọi lại không bắt buộc sẽ được thông báo nếu gói thuê bao sự kiện của bạn bị huỷ vì ứng dụng khách không có quyền đọc dữ liệu này (hoặc ứng dụng đã có quyền nhưng hiện đã mất dữ liệu). Lệnh gọi lại này sẽ được truyền một đối tượng Error cho biết lý do xảy ra lỗi. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onChildAdded(truy vấn, lệnh gọi lại, tuỳ chọn)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Một sự kiện onChildAdded
sẽ được kích hoạt một lần cho mỗi nhà xuất bản con ban đầu tại vị trí này và sẽ được kích hoạt lại mỗi khi có thêm một thành phần con mới. DataSnapshot
được truyền vào lệnh gọi lại sẽ phản ánh dữ liệu của thành phần con có liên quan. Để sắp xếp thứ tự, phương thức này được truyền đối số thứ hai. Đây là một chuỗi chứa khoá của con đồng cấp trước đó theo thứ tự sắp xếp hoặc null
nếu đó là phần tử con đầu tiên.
Chữ ký:
export declare function onChildAdded(query: Query, callback: (snapshot: DataSnapshot, previousChildName: string | null) => unknown, options: ListenOptions): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot, previousChildName: string | null) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot và một chuỗi chứa khoá của thành phần con trước, theo thứ tự sắp xếp hoặc null nếu đó là thành phần con đầu tiên. |
tuỳ chọn | NgheTuỳ chọn | Một đối tượng có thể dùng để định cấu hình onlyOnce , sau đó sẽ xoá trình nghe sau lần gọi đầu tiên. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onChildAdded(query, callback, cancelCallback, các tuỳ chọn)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Một sự kiện onChildAdded
sẽ được kích hoạt một lần cho mỗi nhà xuất bản con ban đầu tại vị trí này và sẽ được kích hoạt lại mỗi khi có thêm một thành phần con mới. DataSnapshot
được truyền vào lệnh gọi lại sẽ phản ánh dữ liệu của thành phần con có liên quan. Để sắp xếp thứ tự, phương thức này được truyền đối số thứ hai. Đây là một chuỗi chứa khoá của con đồng cấp trước đó theo thứ tự sắp xếp hoặc null
nếu đó là phần tử con đầu tiên.
Chữ ký:
export declare function onChildAdded(query: Query, callback: (snapshot: DataSnapshot, previousChildName: string | null) => unknown, cancelCallback: (error: Error) => unknown, options: ListenOptions): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot, previousChildName: string | null) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot và một chuỗi chứa khoá của thành phần con trước, theo thứ tự sắp xếp hoặc null nếu đó là thành phần con đầu tiên. |
cancelCallback | (lỗi: Lỗi) => không xác định | Lệnh gọi lại không bắt buộc sẽ được thông báo nếu gói thuê bao sự kiện của bạn bị huỷ vì ứng dụng khách không có quyền đọc dữ liệu này (hoặc ứng dụng đã có quyền nhưng hiện đã mất dữ liệu). Lệnh gọi lại này sẽ được truyền một đối tượng Error cho biết lý do xảy ra lỗi. |
tuỳ chọn | NgheTuỳ chọn | Một đối tượng có thể dùng để định cấu hình onlyOnce , sau đó sẽ xoá trình nghe sau lần gọi đầu tiên. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onChildChanged(truy vấn, lệnh gọi lại, cancelCallback)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Sự kiện onChildChanged
sẽ được kích hoạt khi dữ liệu được lưu trữ trong phần tử con (hoặc bất kỳ thành phần con cháu nào của sự kiện đó) thay đổi. Xin lưu ý rằng một sự kiện child_changed
có thể biểu thị nhiều thay đổi đối với phần tử con. DataSnapshot
được truyền đến lệnh gọi lại sẽ chứa nội dung con mới. Để sắp xếp thứ tự, lệnh gọi lại cũng được truyền đối số thứ hai. Đối số này là một chuỗi chứa khoá của phần tử con đồng cấp trước đó theo thứ tự sắp xếp hoặc null
nếu đó là phần tử con đầu tiên.
Chữ ký:
export declare function onChildChanged(query: Query, callback: (snapshot: DataSnapshot, previousChildName: string | null) => unknown, cancelCallback?: (error: Error) => unknown): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot, previousChildName: string | null) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot và một chuỗi chứa khoá của thành phần con trước, theo thứ tự sắp xếp hoặc null nếu đó là thành phần con đầu tiên. |
cancelCallback | (lỗi: Lỗi) => không xác định | Lệnh gọi lại không bắt buộc sẽ được thông báo nếu gói thuê bao sự kiện của bạn bị huỷ vì ứng dụng khách không có quyền đọc dữ liệu này (hoặc ứng dụng đã có quyền nhưng hiện đã mất dữ liệu). Lệnh gọi lại này sẽ được truyền một đối tượng Error cho biết lý do xảy ra lỗi. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onChildChanged(truy vấn, lệnh gọi lại, tuỳ chọn)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Sự kiện onChildChanged
sẽ được kích hoạt khi dữ liệu được lưu trữ trong phần tử con (hoặc bất kỳ thành phần con cháu nào của sự kiện đó) thay đổi. Xin lưu ý rằng một sự kiện child_changed
có thể biểu thị nhiều thay đổi đối với phần tử con. DataSnapshot
được truyền đến lệnh gọi lại sẽ chứa nội dung con mới. Để sắp xếp thứ tự, lệnh gọi lại cũng được truyền đối số thứ hai. Đối số này là một chuỗi chứa khoá của phần tử con đồng cấp trước đó theo thứ tự sắp xếp hoặc null
nếu đó là phần tử con đầu tiên.
Chữ ký:
export declare function onChildChanged(query: Query, callback: (snapshot: DataSnapshot, previousChildName: string | null) => unknown, options: ListenOptions): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot, previousChildName: string | null) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot và một chuỗi chứa khoá của thành phần con trước, theo thứ tự sắp xếp hoặc null nếu đó là thành phần con đầu tiên. |
tuỳ chọn | NgheTuỳ chọn | Một đối tượng có thể dùng để định cấu hình onlyOnce , sau đó sẽ xoá trình nghe sau lần gọi đầu tiên. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onChildChanged(query, callback, cancelCallback, các tuỳ chọn)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Sự kiện onChildChanged
sẽ được kích hoạt khi dữ liệu được lưu trữ trong phần tử con (hoặc bất kỳ thành phần con cháu nào của sự kiện đó) thay đổi. Xin lưu ý rằng một sự kiện child_changed
có thể biểu thị nhiều thay đổi đối với phần tử con. DataSnapshot
được truyền đến lệnh gọi lại sẽ chứa nội dung con mới. Để sắp xếp thứ tự, lệnh gọi lại cũng được truyền đối số thứ hai. Đối số này là một chuỗi chứa khoá của phần tử con đồng cấp trước đó theo thứ tự sắp xếp hoặc null
nếu đó là phần tử con đầu tiên.
Chữ ký:
export declare function onChildChanged(query: Query, callback: (snapshot: DataSnapshot, previousChildName: string | null) => unknown, cancelCallback: (error: Error) => unknown, options: ListenOptions): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot, previousChildName: string | null) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot và một chuỗi chứa khoá của thành phần con trước, theo thứ tự sắp xếp hoặc null nếu đó là thành phần con đầu tiên. |
cancelCallback | (lỗi: Lỗi) => không xác định | Lệnh gọi lại không bắt buộc sẽ được thông báo nếu gói thuê bao sự kiện của bạn bị huỷ vì ứng dụng khách không có quyền đọc dữ liệu này (hoặc ứng dụng đã có quyền nhưng hiện đã mất dữ liệu). Lệnh gọi lại này sẽ được truyền một đối tượng Error cho biết lý do xảy ra lỗi. |
tuỳ chọn | NgheTuỳ chọn | Một đối tượng có thể dùng để định cấu hình onlyOnce , sau đó sẽ xoá trình nghe sau lần gọi đầu tiên. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onChildMoved(truy vấn, lệnh gọi lại, cancelCallback)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Sự kiện onChildMoved
sẽ được kích hoạt khi thứ tự sắp xếp của một thành phần con thay đổi sao cho vị trí tương ứng với các thành phần con cùng cấp thay đổi. DataSnapshot
được truyền vào lệnh gọi lại sẽ dành cho dữ liệu của thành phần con đã di chuyển. Phương thức này cũng được truyền đối số thứ hai là một chuỗi chứa khoá của con đồng cấp trước đó theo thứ tự sắp xếp hoặc null
nếu đó là phần tử con đầu tiên.
Chữ ký:
export declare function onChildMoved(query: Query, callback: (snapshot: DataSnapshot, previousChildName: string | null) => unknown, cancelCallback?: (error: Error) => unknown): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot, previousChildName: string | null) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot và một chuỗi chứa khoá của thành phần con trước, theo thứ tự sắp xếp hoặc null nếu đó là thành phần con đầu tiên. |
cancelCallback | (lỗi: Lỗi) => không xác định | Lệnh gọi lại không bắt buộc sẽ được thông báo nếu gói thuê bao sự kiện của bạn bị huỷ vì ứng dụng khách không có quyền đọc dữ liệu này (hoặc ứng dụng đã có quyền nhưng hiện đã mất dữ liệu). Lệnh gọi lại này sẽ được truyền một đối tượng Error cho biết lý do xảy ra lỗi. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onChildMoved(truy vấn, lệnh gọi lại, các tuỳ chọn)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Sự kiện onChildMoved
sẽ được kích hoạt khi thứ tự sắp xếp của một thành phần con thay đổi sao cho vị trí tương ứng với các thành phần con cùng cấp thay đổi. DataSnapshot
được truyền vào lệnh gọi lại sẽ dành cho dữ liệu của thành phần con đã di chuyển. Phương thức này cũng được truyền đối số thứ hai là một chuỗi chứa khoá của con đồng cấp trước đó theo thứ tự sắp xếp hoặc null
nếu đó là phần tử con đầu tiên.
Chữ ký:
export declare function onChildMoved(query: Query, callback: (snapshot: DataSnapshot, previousChildName: string | null) => unknown, options: ListenOptions): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot, previousChildName: string | null) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot và một chuỗi chứa khoá của thành phần con trước, theo thứ tự sắp xếp hoặc null nếu đó là thành phần con đầu tiên. |
tuỳ chọn | NgheTuỳ chọn | Một đối tượng có thể dùng để định cấu hình onlyOnce , sau đó sẽ xoá trình nghe sau lần gọi đầu tiên. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onChildMoved(truy vấn, lệnh gọi lại, cancelCallback, các tuỳ chọn)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Sự kiện onChildMoved
sẽ được kích hoạt khi thứ tự sắp xếp của một thành phần con thay đổi sao cho vị trí tương ứng với các thành phần con cùng cấp thay đổi. DataSnapshot
được truyền vào lệnh gọi lại sẽ dành cho dữ liệu của thành phần con đã di chuyển. Phương thức này cũng được truyền đối số thứ hai là một chuỗi chứa khoá của con đồng cấp trước đó theo thứ tự sắp xếp hoặc null
nếu đó là phần tử con đầu tiên.
Chữ ký:
export declare function onChildMoved(query: Query, callback: (snapshot: DataSnapshot, previousChildName: string | null) => unknown, cancelCallback: (error: Error) => unknown, options: ListenOptions): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot, previousChildName: string | null) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot và một chuỗi chứa khoá của thành phần con trước, theo thứ tự sắp xếp hoặc null nếu đó là thành phần con đầu tiên. |
cancelCallback | (lỗi: Lỗi) => không xác định | Lệnh gọi lại không bắt buộc sẽ được thông báo nếu gói thuê bao sự kiện của bạn bị huỷ vì ứng dụng khách không có quyền đọc dữ liệu này (hoặc ứng dụng đã có quyền nhưng hiện đã mất dữ liệu). Lệnh gọi lại này sẽ được truyền một đối tượng Error cho biết lý do xảy ra lỗi. |
tuỳ chọn | NgheTuỳ chọn | Một đối tượng có thể dùng để định cấu hình onlyOnce , sau đó sẽ xoá trình nghe sau lần gọi đầu tiên. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onChildRemoved(truy vấn, lệnh gọi lại, cancelCallback)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Một sự kiện onChildRemoved
sẽ được kích hoạt một lần mỗi khi trẻ bị xoá. DataSnapshot
được truyền vào lệnh gọi lại sẽ là dữ liệu cũ của thành phần con đã bị xoá. Trẻ sẽ bị xoá khi:
- một ứng dụng gọi
remove()
một cách rõ ràng trên phần tử con đó hoặc một trong các đối tượng cấp trên của nó – ứng dụng gọiset(null)
trên phần tử con đó hoặc một trong các đối tượng cấp trên của nó – tất cả các phần tử con đã bị xoá – có một truy vấn đang lọc phần tử con đó (vì thứ tự sắp xếp đã thay đổi hoặc đã đạt đến giới hạn tối đa)
Chữ ký:
export declare function onChildRemoved(query: Query, callback: (snapshot: DataSnapshot) => unknown, cancelCallback?: (error: Error) => unknown): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot và một chuỗi chứa khoá của thành phần con trước, theo thứ tự sắp xếp hoặc null nếu đó là thành phần con đầu tiên. |
cancelCallback | (lỗi: Lỗi) => không xác định | Lệnh gọi lại không bắt buộc sẽ được thông báo nếu gói thuê bao sự kiện của bạn bị huỷ vì ứng dụng khách không có quyền đọc dữ liệu này (hoặc ứng dụng đã có quyền nhưng hiện đã mất dữ liệu). Lệnh gọi lại này sẽ được truyền một đối tượng Error cho biết lý do xảy ra lỗi. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onChildRemoved(truy vấn, lệnh gọi lại, các tuỳ chọn)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Một sự kiện onChildRemoved
sẽ được kích hoạt một lần mỗi khi trẻ bị xoá. DataSnapshot
được truyền vào lệnh gọi lại sẽ là dữ liệu cũ của thành phần con đã bị xoá. Trẻ sẽ bị xoá khi:
- một ứng dụng gọi
remove()
một cách rõ ràng trên phần tử con đó hoặc một trong các đối tượng cấp trên của nó – ứng dụng gọiset(null)
trên phần tử con đó hoặc một trong các đối tượng cấp trên của nó – tất cả các phần tử con đã bị xoá – có một truy vấn đang lọc phần tử con đó (vì thứ tự sắp xếp đã thay đổi hoặc đã đạt đến giới hạn tối đa)
Chữ ký:
export declare function onChildRemoved(query: Query, callback: (snapshot: DataSnapshot) => unknown, options: ListenOptions): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot và một chuỗi chứa khoá của thành phần con trước, theo thứ tự sắp xếp hoặc null nếu đó là thành phần con đầu tiên. |
tuỳ chọn | NgheTuỳ chọn | Một đối tượng có thể dùng để định cấu hình onlyOnce , sau đó sẽ xoá trình nghe sau lần gọi đầu tiên. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onChildRemoved(truy vấn, lệnh gọi lại, cancelCallback, các tuỳ chọn)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Một sự kiện onChildRemoved
sẽ được kích hoạt một lần mỗi khi trẻ bị xoá. DataSnapshot
được truyền vào lệnh gọi lại sẽ là dữ liệu cũ của thành phần con đã bị xoá. Trẻ sẽ bị xoá khi:
- một ứng dụng gọi
remove()
một cách rõ ràng trên phần tử con đó hoặc một trong các đối tượng cấp trên của nó – ứng dụng gọiset(null)
trên phần tử con đó hoặc một trong các đối tượng cấp trên của nó – tất cả các phần tử con đã bị xoá – có một truy vấn đang lọc phần tử con đó (vì thứ tự sắp xếp đã thay đổi hoặc đã đạt đến giới hạn tối đa)
Chữ ký:
export declare function onChildRemoved(query: Query, callback: (snapshot: DataSnapshot) => unknown, cancelCallback: (error: Error) => unknown, options: ListenOptions): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot và một chuỗi chứa khoá của thành phần con trước, theo thứ tự sắp xếp hoặc null nếu đó là thành phần con đầu tiên. |
cancelCallback | (lỗi: Lỗi) => không xác định | Lệnh gọi lại không bắt buộc sẽ được thông báo nếu gói thuê bao sự kiện của bạn bị huỷ vì ứng dụng khách không có quyền đọc dữ liệu này (hoặc ứng dụng đã có quyền nhưng hiện đã mất dữ liệu). Lệnh gọi lại này sẽ được truyền một đối tượng Error cho biết lý do xảy ra lỗi. |
tuỳ chọn | NgheTuỳ chọn | Một đối tượng có thể dùng để định cấu hình onlyOnce , sau đó sẽ xoá trình nghe sau lần gọi đầu tiên. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onValue(truy vấn, lệnh gọi lại, cancelCallback)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Sự kiện onValue
sẽ kích hoạt một lần với dữ liệu ban đầu được lưu trữ tại vị trí này, sau đó kích hoạt lại mỗi khi dữ liệu thay đổi. DataSnapshot
được truyền đến lệnh gọi lại sẽ dành cho vị trí mà on()
được gọi. Thao tác này sẽ không kích hoạt cho đến khi toàn bộ nội dung được đồng bộ hoá. Nếu không có dữ liệu, vị trí sẽ được kích hoạt bằng một DataSnapshot
trống (val()
sẽ trả về null
).
Chữ ký:
export declare function onValue(query: Query, callback: (snapshot: DataSnapshot) => unknown, cancelCallback?: (error: Error) => unknown): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot. |
cancelCallback | (lỗi: Lỗi) => không xác định | Lệnh gọi lại không bắt buộc sẽ được thông báo nếu gói thuê bao sự kiện của bạn bị huỷ vì ứng dụng khách không có quyền đọc dữ liệu này (hoặc ứng dụng đã có quyền nhưng hiện đã mất dữ liệu). Lệnh gọi lại này sẽ được truyền một đối tượng Error cho biết lý do xảy ra lỗi. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onValue(truy vấn, lệnh gọi lại, tuỳ chọn)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Sự kiện onValue
sẽ kích hoạt một lần với dữ liệu ban đầu được lưu trữ tại vị trí này, sau đó kích hoạt lại mỗi khi dữ liệu thay đổi. DataSnapshot
được truyền đến lệnh gọi lại sẽ dành cho vị trí mà on()
được gọi. Thao tác này sẽ không kích hoạt cho đến khi toàn bộ nội dung được đồng bộ hoá. Nếu không có dữ liệu, vị trí sẽ được kích hoạt bằng một DataSnapshot
trống (val()
sẽ trả về null
).
Chữ ký:
export declare function onValue(query: Query, callback: (snapshot: DataSnapshot) => unknown, options: ListenOptions): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot. |
tuỳ chọn | NgheTuỳ chọn | Một đối tượng có thể dùng để định cấu hình onlyOnce , sau đó sẽ xoá trình nghe sau lần gọi đầu tiên. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
onValue(truy vấn, lệnh gọi lại, cancelCallback, tuỳ chọn)
Theo dõi các thay đổi về dữ liệu tại một vị trí cụ thể.
Đây là cách chính để đọc dữ liệu từ Cơ sở dữ liệu. Lệnh gọi lại của bạn sẽ được kích hoạt cho dữ liệu ban đầu và kích hoạt lại bất cứ khi nào dữ liệu thay đổi. Gọi lệnh gọi lại huỷ đăng ký được trả về để ngừng nhận thông tin cập nhật. Hãy xem bài viết Truy xuất dữ liệu trên web để biết thêm chi tiết.
Sự kiện onValue
sẽ kích hoạt một lần với dữ liệu ban đầu được lưu trữ tại vị trí này, sau đó kích hoạt lại mỗi khi dữ liệu thay đổi. DataSnapshot
được truyền đến lệnh gọi lại sẽ dành cho vị trí mà on()
được gọi. Thao tác này sẽ không kích hoạt cho đến khi toàn bộ nội dung được đồng bộ hoá. Nếu không có dữ liệu, vị trí sẽ được kích hoạt bằng một DataSnapshot
trống (val()
sẽ trả về null
).
Chữ ký:
export declare function onValue(query: Query, callback: (snapshot: DataSnapshot) => unknown, cancelCallback: (error: Error) => unknown, options: ListenOptions): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Truy vấn cần chạy. |
số gọi lại | (ảnh chụp nhanh: DataSnapshot) => không xác định | Lệnh gọi lại kích hoạt khi sự kiện được chỉ định xảy ra. Lệnh gọi lại sẽ được truyền một DataSnapshot. |
cancelCallback | (lỗi: Lỗi) => không xác định | Lệnh gọi lại không bắt buộc sẽ được thông báo nếu gói thuê bao sự kiện của bạn bị huỷ vì ứng dụng khách không có quyền đọc dữ liệu này (hoặc ứng dụng đã có quyền nhưng hiện đã mất dữ liệu). Lệnh gọi lại này sẽ được truyền một đối tượng Error cho biết lý do xảy ra lỗi. |
tuỳ chọn | NgheTuỳ chọn | Một đối tượng có thể dùng để định cấu hình onlyOnce , sau đó sẽ xoá trình nghe sau lần gọi đầu tiên. |
Trường hợp trả lại hàng:
Một hàm có thể được gọi để xoá trình nghe.
truy vấn(query, queryConstraints)
Tạo một thực thể Query
không thể thay đổi 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(query: Query, ...queryConstraints: QueryConstraint[]): Query;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
truy vấn | Cụm từ tìm kiếm | Thực thể Truy vấn để dùng làm cơ sở cho các quy tắc ràng buộc mới. |
queryConstraints | QueryConstraint[] | Danh sách các QueryConstraint sẽ áp dụng. |
Trường hợp trả lại hàng:
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(ref, ...)
onNgắt kết nối(ref)
Trả về đối tượng OnDisconnect
– hãy xem phần Bật các chức năng ngoại tuyến trong JavaScript để biết thêm thông tin về cách sử dụng đối tượng đó.
Chữ ký:
export declare function onDisconnect(ref: DatabaseReference): OnDisconnect;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
tham chiếu | DatabaseReference (Tham chiếu cơ sở dữ liệu) | Tham chiếu để thêm điều kiện kích hoạt OnNgắt kết nối cho. |
Trường hợp trả lại hàng:
remove(ref)
Xoá dữ liệu tại vị trí Cơ sở dữ liệu này.
Mọi dữ liệu tại các vị trí con cũng sẽ bị xoá.
Tác động của việc xoá sẽ xuất hiện ngay lập tức và sự kiện "value" tương ứng sẽ được kích hoạt. Quá trình đồng bộ hoá xoá với máy chủ Firebase cũng sẽ bắt đầu và Promise được trả về sẽ phân giải khi hoàn tất. Nếu được cung cấp, lệnh gọi lại onComplete sẽ được gọi không đồng bộ sau khi quá trình đồng bộ hoá hoàn tất.
Chữ ký:
export declare function remove(ref: DatabaseReference): Promise<void>;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
tham chiếu | DatabaseReference (Tham chiếu cơ sở dữ liệu) | Vị trí cần xoá. |
Trường hợp trả lại hàng:
Lời hứa<vô hiệu>
Được giải quyết khi quá trình xoá trên máy chủ hoàn tất.
runTransaction(ref; transactionUpdate, options)
Sửa đổi dữ liệu nguyên tử tại vị trí này.
Sửa đổi dữ liệu nguyên tử tại vị trí này. Không giống như set()
thông thường, chỉ ghi đè dữ liệu bất kể giá trị trước đó là gì, runTransaction()
được dùng để sửa đổi giá trị hiện có thành giá trị mới, đảm bảo không có xung đột với các ứng dụng khác ghi dữ liệu lên cùng một vị trí cùng một lúc.
Để thực hiện việc này, bạn truyền cho runTransaction()
một hàm cập nhật dùng để chuyển đổi giá trị hiện tại thành giá trị mới. Nếu một ứng dụng khác ghi vào vị trí đó trước khi giá trị mới của bạn được ghi thành công, thì hàm cập nhật của bạn sẽ được gọi lại với giá trị hiện tại mới và thao tác ghi sẽ được thử lại. Điều này sẽ xảy ra lặp đi lặp lại cho đến khi quá trình ghi của bạn thành công mà không có xung đột hoặc bạn huỷ giao dịch bằng cách không trả về một giá trị từ hàm cập nhật của mình.
Chữ ký:
export declare function runTransaction(ref: DatabaseReference, transactionUpdate: (currentData: any) => unknown, options?: TransactionOptions): Promise<TransactionResult>;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
tham chiếu | DatabaseReference (Tham chiếu cơ sở dữ liệu) | Vị trí cần sửa đổi ở mức nguyên tử. |
Cập nhật giao dịch | (currentData: bất kỳ) => không xác định | Hàm do nhà phát triển cung cấp sẽ được truyền dữ liệu hiện tại được lưu trữ tại vị trí này (dưới dạng đối tượng JavaScript). Hàm phải trả về giá trị mới mong muốn (dưới dạng đối tượng JavaScript). Nếu trả về undefined (tức là bạn không trả về đối số nào), thì giao dịch sẽ bị huỷ và dữ liệu ở vị trí này sẽ không được sửa đổi. |
tuỳ chọn | Giao dịch | Đối tượng tuỳ chọn để định cấu hình giao dịch. |
Trường hợp trả lại hàng:
Cam kết<TransactionResult>
Bạn có thể tuỳ ý sử dụng Promise
thay cho lệnh gọi lại onComplete
để xử lý thành công và không thành công.
set(ref; giá trị)
Ghi dữ liệu vào vị trí Cơ sở dữ liệu này.
Thao tác này sẽ thay thế mọi dữ liệu ở vị trí này và tất cả các vị trí con.
Hiệu quả của việc ghi sẽ hiển thị ngay lập tức và các sự kiện tương ứng ("value", "child_added", v.v.) sẽ được kích hoạt. Quá trình đồng bộ hoá dữ liệu với máy chủ Firebase cũng sẽ bắt đầu và Promise được trả về sẽ phân giải khi hoàn tất. Nếu được cung cấp, lệnh gọi lại onComplete
sẽ được gọi không đồng bộ sau khi quá trình đồng bộ hoá hoàn tất.
Việc truyền null
cho giá trị mới tương đương với việc gọi remove()
; cụ thể là tất cả dữ liệu ở vị trí này và tất cả vị trí con sẽ bị xoá.
set()
sẽ xoá mọi mức độ ưu tiên được lưu trữ tại vị trí này. Vì vậy, nếu muốn giữ nguyên mức độ ưu tiên, bạn cần sử dụng setWithPriority()
.
Lưu ý rằng việc sửa đổi dữ liệu bằng set()
sẽ hủy mọi giao dịch đang chờ xử lý tại vị trí đó, vì vậy, bạn cần hết sức cẩn thận khi kết hợp set()
và transaction()
để sửa đổi cùng một dữ liệu.
Một set()
sẽ tạo một "giá trị" duy nhất sự kiện tại địa điểm thực hiện set()
.
Chữ ký:
export declare function set(ref: DatabaseReference, value: unknown): Promise<void>;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
tham chiếu | DatabaseReference (Tham chiếu cơ sở dữ liệu) | Vị trí cần ghi. |
value | không xác định | Giá trị cần ghi (chuỗi, số, boolean, đối tượng, mảng hoặc giá trị rỗng). |
Trường hợp trả lại hàng:
Lời hứa<vô hiệu>
Phân giải khi hoàn tất quá trình ghi vào máy chủ.
setPriority(ref; ưu tiên)
Đặt mức độ ưu tiên cho dữ liệu tại vị trí Cơ sở dữ liệu này.
Ứng dụng không cần dùng mức độ ưu tiên nhưng có thể sắp xếp các bộ sưu tập theo thuộc tính thông thường (xem phần Sắp xếp và lọc dữ liệu).
Chữ ký:
export declare function setPriority(ref: DatabaseReference, priority: string | number | null): Promise<void>;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
tham chiếu | DatabaseReference (Tham chiếu cơ sở dữ liệu) | Vị trí cần ghi. |
tuyển sinh ưu tiên | chuỗi | số | rỗng | Mức độ ưu tiên cần ghi (chuỗi, số hoặc giá trị rỗng). |
Trường hợp trả lại hàng:
Lời hứa<vô hiệu>
Phân giải khi hoàn tất quá trình ghi vào máy chủ.
setWithPriority(ref, giá trị, mức độ ưu tiên)
Ghi dữ liệu vị trí Cơ sở dữ liệu. Giống như set()
nhưng cũng chỉ định mức độ ưu tiên cho dữ liệu đó.
Ứng dụng không cần dùng mức độ ưu tiên nhưng có thể sắp xếp các bộ sưu tập theo thuộc tính thông thường (xem phần Sắp xếp và lọc dữ liệu).
Chữ ký:
export declare function setWithPriority(ref: DatabaseReference, value: unknown, priority: string | number | null): Promise<void>;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
tham chiếu | DatabaseReference (Tham chiếu cơ sở dữ liệu) | Vị trí cần ghi. |
value | không xác định | Giá trị cần ghi (chuỗi, số, boolean, đối tượng, mảng hoặc giá trị rỗng). |
tuyển sinh ưu tiên | chuỗi | số | rỗng | Mức độ ưu tiên cần ghi (chuỗi, số hoặc giá trị rỗng). |
Trường hợp trả lại hàng:
Lời hứa<vô hiệu>
Phân giải khi hoàn tất quá trình ghi vào máy chủ.
update(ref; giá trị)
Ghi nhiều giá trị vào Cơ sở dữ liệu cùng một lúc.
Đối số values
chứa nhiều cặp thuộc tính-giá trị sẽ được ghi cùng nhau vào Cơ sở dữ liệu. Mỗi tài sản con có thể là một tài sản đơn giản (ví dụ: "tên") hoặc một đường dẫn tương đối (ví dụ: "tên/tên") từ vị trí hiện tại đến dữ liệu cần cập nhật.
Trái ngược với phương thức set()
, bạn có thể dùng update()
để chỉ cập nhật có chọn lọc các thuộc tính được tham chiếu ở vị trí hiện tại (thay vì thay thế tất cả các thuộc tính con ở vị trí hiện tại).
Hiệu quả của việc ghi sẽ hiển thị ngay lập tức và các sự kiện tương ứng ('value', 'child_added', v.v.) sẽ được kích hoạt. Quá trình đồng bộ hoá dữ liệu với máy chủ Firebase cũng sẽ bắt đầu và Promise được trả về sẽ phân giải khi hoàn tất. Nếu được cung cấp, lệnh gọi lại onComplete
sẽ được gọi không đồng bộ sau khi quá trình đồng bộ hoá hoàn tất.
Một update()
sẽ tạo một "giá trị" duy nhất sự kiện tại vị trí thực hiện update()
, bất kể có bao nhiêu phần tử con đã được sửa đổi.
Lưu ý rằng việc sửa đổi dữ liệu bằng update()
sẽ hủy mọi giao dịch đang chờ xử lý tại vị trí đó, vì vậy, bạn cần hết sức cẩn thận khi kết hợp update()
và transaction()
để sửa đổi cùng một dữ liệu.
Việc chuyển null
đến update()
sẽ xoá dữ liệu ở vị trí này.
Hãy xem bài viết Giới thiệu nội dung cập nhật về nhiều vị trí và nhiều nội dung khác.
Chữ ký:
export declare function update(ref: DatabaseReference, values: object): Promise<void>;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
tham chiếu | DatabaseReference (Tham chiếu cơ sở dữ liệu) | Vị trí cần ghi. |
giá trị | đối tượng | Đối tượng chứa nhiều giá trị. |
Trường hợp trả lại hàng:
Lời hứa<vô hiệu>
Được phân giải khi quá trình cập nhật trên máy chủ hoàn tất.
hàm(giá trị; ...)
endAt(giá trị; khoá)
Tạo QueryConstraint
có điểm cuối đã chỉ định.
Bằng cách sử dụng startAt()
, startAfter()
, endBefore()
, endAt()
và equalTo()
, bạn có thể chọn điểm bắt đầu và điểm kết thúc tuỳ ý cho truy vấn của mình.
Điểm cuối có tính cả hai giá trị này, do đó, truy vấn con có giá trị chính xác được chỉ định sẽ được đưa vào truy vấn. Bạn có thể dùng đối số khoá không bắt buộc để giới hạn thêm phạm vi của truy vấn. Nếu bạn chỉ định giá trị này thì các con có chính xác giá trị được chỉ định cũng phải có tên khoá nhỏ hơn hoặc bằng khoá được chỉ định.
Bạn có thể đọc thêm về endAt()
trong bài viết Lọc dữ liệu.
Chữ ký:
export declare function endAt(value: number | string | boolean | null, key?: string): QueryConstraint;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
value | số | chuỗi | boolean | rỗng | Giá trị kết thúc vào. Loại đối số phụ thuộc vào hàm orderBy() nào được dùng trong truy vấn này. Chỉ định một giá trị khớp với loại orderBy () . Khi được sử dụng kết hợp với orderByKey() , giá trị phải là một chuỗi. |
phím | chuỗi | Khoá con kết thúc vào, trong số các khoá con có mức độ ưu tiên đã chỉ định trước đó. Bạn chỉ được phép sử dụng đối số này nếu sắp xếp theo thứ tự con, giá trị hoặc mức độ ưu tiên. |
Trường hợp trả lại hàng:
endbefore(giá trị, khoá)
Tạo QueryConstraint
có điểm cuối đã chỉ định (không bao gồm điểm cuối).
Bằng cách sử dụng startAt()
, startAfter()
, endBefore()
, endAt()
và equalTo()
, bạn có thể chọn điểm bắt đầu và điểm kết thúc tuỳ ý cho truy vấn của mình.
Chỉ có một điểm cuối. Nếu bạn chỉ cung cấp một giá trị, truy vấn con có giá trị nhỏ hơn giá trị được chỉ định sẽ được đưa vào truy vấn. Nếu một khoá được chỉ định, thì con phải có giá trị nhỏ hơn hoặc bằng giá trị đã chỉ định và tên khoá nhỏ hơn khoá được chỉ định.
Chữ ký:
export declare function endBefore(value: number | string | boolean | null, key?: string): QueryConstraint;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
value | số | chuỗi | boolean | rỗng | Giá trị kết thúc trước. Loại đối số phụ thuộc vào hàm orderBy() nào được dùng trong truy vấn này. Chỉ định một giá trị khớp với loại orderBy () . Khi được sử dụng kết hợp với orderByKey() , giá trị phải là một chuỗi. |
phím | chuỗi | Khoá con kết thúc trước, trong số các khoá con có mức độ ưu tiên đã chỉ định trước đó. Bạn chỉ được phép sử dụng đối số này nếu sắp xếp theo thứ tự con, giá trị hoặc mức độ ưu tiên. |
Trường hợp trả lại hàng:
bằng(giá_trị; khoá)
Tạo một QueryConstraint
bao gồm các phần tử con khớp với giá trị được chỉ định.
Bằng cách sử dụng startAt()
, startAfter()
, endBefore()
, endAt()
và equalTo()
, bạn có thể chọn điểm bắt đầu và điểm kết thúc tuỳ ý cho truy vấn của mình.
Bạn có thể dùng đối số khoá không bắt buộc để giới hạn thêm phạm vi của truy vấn. Nếu được chỉ định thì các phần tử con có giá trị được chỉ định chính xác cũng phải có đúng khoá được chỉ định làm tên khoá. Bạn có thể sử dụng hàm này để lọc các tập hợp kết quả có nhiều kết quả trùng khớp cho cùng một giá trị.
Bạn có thể đọc thêm về equalTo()
trong bài viết Lọc dữ liệu.
Chữ ký:
export declare function equalTo(value: number | string | boolean | null, key?: string): QueryConstraint;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
value | số | chuỗi | boolean | rỗng | Giá trị cần khớp. Loại đối số phụ thuộc vào hàm orderBy() nào được dùng trong truy vấn này. Chỉ định một giá trị khớp với loại orderBy () . Khi được sử dụng kết hợp với orderByKey() , giá trị phải là một chuỗi. |
phím | chuỗi | Khoá con bắt đầu trong số các khoá con có mức độ ưu tiên đã chỉ định trước đó. Bạn chỉ được phép sử dụng đối số này nếu sắp xếp theo thứ tự con, giá trị hoặc mức độ ưu tiên. |
Trường hợp trả lại hàng:
startSau(giá trị, khoá)
Tạo QueryConstraint
với điểm xuất phát đã chỉ định (không bao gồm).
Bằng cách sử dụng startAt()
, startAfter()
, endBefore()
, endAt()
và equalTo()
, bạn có thể chọn điểm bắt đầu và điểm kết thúc tuỳ ý cho truy vấn của mình.
Điểm xuất phát là duy nhất. Nếu bạn chỉ cung cấp một giá trị, truy vấn con có giá trị lớn hơn giá trị được chỉ định sẽ được đưa vào truy vấn. Nếu một khoá được chỉ định, thì con phải có giá trị lớn hơn hoặc bằng giá trị đã chỉ định và tên khoá lớn hơn khoá được chỉ định.
Chữ ký:
export declare function startAfter(value: number | string | boolean | null, key?: string): QueryConstraint;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
value | số | chuỗi | boolean | rỗng | Giá trị bắt đầu sau đó. Loại đối số phụ thuộc vào hàm orderBy() nào được dùng trong truy vấn này. Chỉ định một giá trị khớp với loại orderBy () . Khi được sử dụng kết hợp với orderByKey() , giá trị phải là một chuỗi. |
phím | chuỗi | Khoá con để bắt đầu sau đó. Bạn chỉ được phép sử dụng đối số này nếu sắp xếp theo thứ tự con, giá trị hoặc mức độ ưu tiên. |
Trường hợp trả lại hàng:
startAt(giá trị; khoá)
Tạo QueryConstraint
với điểm bắt đầu đã chỉ định.
Bằng cách sử dụng startAt()
, startAfter()
, endBefore()
, endAt()
và equalTo()
, bạn có thể chọn điểm bắt đầu và điểm kết thúc tuỳ ý cho truy vấn của mình.
Điểm bắt đầu có tính toàn bộ, do đó, truy vấn con có giá trị chính xác được chỉ định sẽ được đưa vào truy vấn. Bạn có thể dùng đối số khoá không bắt buộc để giới hạn thêm phạm vi của truy vấn. Nếu bạn chỉ định giá trị này thì các con có chính xác giá trị được chỉ định cũng phải có tên khoá lớn hơn hoặc bằng khoá được chỉ định.
Bạn có thể đọc thêm về startAt()
trong bài viết Lọc dữ liệu.
Chữ ký:
export declare function startAt(value?: number | string | boolean | null, key?: string): QueryConstraint;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
value | số | chuỗi | boolean | rỗng | Giá trị bắt đầu tại. Loại đối số phụ thuộc vào hàm orderBy() nào được dùng trong truy vấn này. Chỉ định một giá trị khớp với loại orderBy () . Khi được sử dụng kết hợp với orderByKey() , giá trị phải là một chuỗi. |
phím | chuỗi | Khoá con bắt đầu tại. Bạn chỉ được phép sử dụng đối số này nếu sắp xếp theo thứ tự con, giá trị hoặc mức độ ưu tiên. |
Trường hợp trả lại hàng:
EventType
Một trong các chuỗi sau: "value", "child_Add", "child_thay đổi", "child_removed" hoặc "child_moved".
Chữ ký:
export declare type EventType = 'value' | 'child_added' | 'child_changed' | 'child_moved' | 'child_removed';
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 = 'endAt' | 'endBefore' | 'startAt' | 'startAfter' | 'limitToFirst' | 'limitToLast' | 'orderByChild' | 'orderByKey' | 'orderByPriority' | 'orderByValue' | 'equalTo';
Hủy đăng ký
Lệnh gọi lại có thể được gọi để xoá một trình nghe.
Chữ ký:
export declare type Unsubscribe = () => void;