OnDisconnect class

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ị mất hoặc ứng dụng khách gặp sự cố.

Lớp onDisconnect thường được dùng nhất để quản lý sự hiện diện trong các ứng dụng. Lớp này 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 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.

Xin lưu ý rằng 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.

Chữ ký:

export declare class OnDisconnect 

Phương thức

Phương thức Công cụ sửa đổi Mô tả
cancel() Huỷ tất cả các sự kiện cập nhật hoặc tập hợp onDisconnect() đã xếp hàng đợi trước đó cho vị trí này và tất cả các vị trí con.Nếu một lượt ghi đã được đưa vào hàng đợi cho vị trí này qua set() hoặc update() tại một vị trí mẹ, thì quá trình ghi tại vị trí này sẽ bị huỷ, mặc dù việc ghi vào các vị trí đồng cấp sẽ vẫn xảy ra.
remove() Đảm bảo dữ liệu tại vị trí này bị xoá khi máy khách bị ngắt kết nối (do đóng trình duyệt, chuyển đến một trang mới hoặc sự cố mạng).
set(giá_trị) Đảm bảo dữ liệu tại vị trí này được đặt thành giá trị được chỉ định khi ứng dụng bị ngắt kết nối (do đóng trình duyệt, chuyển đến một trang mới hoặc vấn đề về mạng).set() đặc biệt hữu ích cho việc triển khai "sự hiện diện" hệ thống, trong đó giá trị phải được thay đổi hoặc xóa khi người dùng ngắt kết nối để chúng có vẻ như "ngoại tuyến" với những người dùng khác. Xem Bật chức năng ngoại tuyến trong JavaScript để biết thêm thông tin.Lưu ý rằng hoạt động 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 hiện tượng ngắt kết nối xảy ra, thì bạn cần phải thiết lập lại các thao tác onDisconnect mỗi lần.
setWithPriority(giá_trị, mức ưu tiên) Đảm bảo dữ liệu tại vị trí này được thiết lập thành giá trị và mức độ ưu tiên đã chỉ định khi ứng dụng bị ngắt kết nối (do đóng trình duyệt, chuyển đến một trang mới hoặc vấn đề về mạng).
update(values) Ghi nhiều giá trị tại vị trí này khi ứng dụng bị ngắt kết nối (do đóng trình duyệt, chuyển đến trang mới hoặc vấn đề về mạng).Đố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 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).

Bật ngắt kết nối.cancel()

Huỷ tất cả sự kiện cập nhật hoặc tập hợp onDisconnect() đã xếp hàng đợi trước đó đối với vị trí này và tất cả trẻ.

Nếu một lượt ghi đã được đưa vào hàng đợi cho vị trí này qua set() hoặc update() tại một vị trí mẹ, thì quá trình ghi tại vị trí này sẽ bị huỷ, mặc dù việc ghi vào các vị trí đồng cấp sẽ vẫn xảy ra.

Chữ ký:

cancel(): Promise<void>;

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 đồng bộ hóa với máy chủ hoàn tất.

OnNgắt kết nối.remove()

Đảm bảo dữ liệu tại vị trí này bị xoá khi máy khách bị ngắt kết nối (do đóng trình duyệt, chuyển đến một trang mới hoặc sự cố mạng).

Chữ ký:

remove(): Promise<void>;

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 đồng bộ hóa với máy chủ hoàn tất.

OnNgắt kết nối.set()

Đảm bảo dữ liệu tại vị trí này được đặt thành giá trị được chỉ định khi ứng dụng bị ngắt kết nối (do đóng trình duyệt, chuyển đến một trang mới hoặc sự cố mạng).

set() đặc biệt hữu ích cho việc triển khai "sự hiện diện" hệ thống, trong đó giá trị phải được thay đổi hoặc xóa khi người dùng ngắt kết nối để chúng có vẻ như "ngoại tuyến" với những người dùng khác. Xem Bật chức năng ngoại tuyến trong JavaScript để biết thêm thông tin.

Xin lưu ý rằng 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 hiện tượng ngắt kết nối xảy ra, thì bạn cần phải thiết lập lại các thao tác onDisconnect mỗi lần.

Chữ ký:

set(value: unknown): Promise<void>;

Thông số

Thông số Loại Mô tả
value không xác định Giá trị được ghi vào vị trí này khi ngắt kết nối (có thể là đối tượng, mảng, chuỗi, số, boolean 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 quá trình đồng bộ hoá với Cơ sở dữ liệu hoàn tất.

OnNgắt.setWithPriority()

Đảm bảo dữ liệu tại vị trí này được thiết lập thành giá trị và mức độ ưu tiên đã chỉ định khi ứng dụng bị ngắt kết nối (do đóng trình duyệt, chuyển đến một trang mới hoặc vấn đề về mạng).

Chữ ký:

setWithPriority(value: unknown, priority: number | string | null): Promise<void>;

Thông số

Thông số Loại Mô tả
value không xác định Giá trị được ghi vào vị trí này khi ngắt kết nối (có thể là đối tượng, mảng, chuỗi, số, boolean hoặc giá trị rỗng).
tuyển sinh ưu tiên số | chuỗi | 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 quá trình đồng bộ hoá với Cơ sở dữ liệu hoàn tất.

OnNgắt kết nối.update()

Ghi nhiều giá trị tại vị trí này khi ứng dụng bị ngắt kết nối (do đóng trình duyệt, điều hướng đến một trang mới hoặc sự cố mạng).

Đố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).

Chữ ký:

update(values: object): Promise<void>;

Thông số

Thông số Loại Mô tả
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>

Phân giải khi quá trình đồng bộ hoá với Cơ sở dữ liệu hoàn tất.