OnDisconnect class

Klasa onDisconnect umożliwia zapisanie lub wyczyszczenie danych, gdy klient rozłączy się z serwerem bazy danych. Te aktualizacje pojawiają się niezależnie od tego, czy klient rozłączy się prawidłowo, czy nie, więc możesz na nich polegać, jeśli chodzi o czyszczenie danych nawet w przypadku zerwania połączenia lub awarii klienta.

Klasa onDisconnect jest najczęściej używana do zarządzania obecnością w aplikacjach, w których przydatne jest wykrywanie liczby podłączonych klientów i rozłączania się innych klientów. Aby uzyskać więcej informacji, zobacz Włączanie funkcji offline w JavaScript .

Aby uniknąć problemów w przypadku zerwania połączenia przed przesłaniem żądań do serwera bazy danych, funkcje te należy wywołać przed zapisaniem jakichkolwiek danych.

Należy pamiętać, że operacje onDisconnect są wyzwalane tylko raz. Jeśli chcesz, aby operacja była wykonywana za każdym razem, gdy nastąpi rozłączenie, musisz ponownie ustanowić operację onDisconnect za każdym razem, gdy ponownie się połączysz.

Podpis:

export declare class OnDisconnect 

Metody

metoda Modyfikatory Opis
anulować() Anuluje wszystkie wcześniej ustawione w kolejce zdarzenia onDisconnect() lub aktualizacji dla tej lokalizacji i wszystkich elementów podrzędnych. Jeśli zapis został ustawiony w kolejce dla tej lokalizacji za pomocą funkcji set() lub update() w lokalizacji nadrzędnej, zapis w tej lokalizacji zostanie anulowany, chociaż zapisy w lokalizacjach równorzędnych będą nadal miały miejsce.
usunąć() Zapewnia usunięcie danych w tej lokalizacji po rozłączeniu klienta (z powodu zamknięcia przeglądarki, przejścia do nowej strony lub problemów z siecią).
ustalić wartość) Zapewnia, że ​​dane w tej lokalizacji mają ustawioną określoną wartość, gdy klient zostanie rozłączony (z powodu zamknięcia przeglądarki, przejścia do nowej strony lub problemów z siecią). set() jest szczególnie przydatna do implementowania systemów „obecności”, w których wartość powinna zostać zmieniona lub wyczyszczona, gdy użytkownik rozłączy się, aby inni użytkownicy widzieli go jako „offline”. Aby uzyskać więcej informacji, zobacz Włączanie funkcji offline w JavaScript . Należy pamiętać, że operacje onDisconnect są wyzwalane tylko raz. Jeśli chcesz, aby operacja była wykonywana za każdym razem, gdy nastąpi rozłączenie, musisz za każdym razem ponownie ustanowić operację onDisconnect .
setWithPriority(wartość, priorytet) Zapewnia, że ​​dane w tej lokalizacji mają ustawioną określoną wartość i priorytet w przypadku rozłączenia klienta (z powodu zamknięcia przeglądarki, przejścia do nowej strony lub problemów z siecią).
aktualizacja (wartości) Zapisuje wiele wartości w tej lokalizacji, gdy klient jest rozłączony (z powodu zamknięcia przeglądarki, przejścia do nowej strony lub problemów z siecią). Argument values zawiera wiele par właściwość-wartość, które zostaną zapisane razem w bazie danych. Każda właściwość podrzędna może być prostą właściwością (na przykład „nazwa”) lub ścieżką względną (na przykład „nazwa/imię”) od bieżącej lokalizacji do danych do zaktualizowania. W przeciwieństwie do metody set() , metody update() można używać do selektywnego aktualizowania tylko właściwości, do których istnieją odniesienia, w bieżącej lokalizacji (zamiast zastępowania wszystkich właściwości podrzędnych w bieżącej lokalizacji).

OnDisconnect.cancel()

Anuluje wszystkie wcześniej ustawione w kolejce zdarzenia onDisconnect() lub aktualizacji dla tej lokalizacji i wszystkich elementów podrzędnych.

Jeśli zapis został ustawiony w kolejce dla tej lokalizacji za pomocą funkcji set() lub update() w lokalizacji nadrzędnej, zapis w tej lokalizacji zostanie anulowany, chociaż zapisy w lokalizacjach równorzędnych będą nadal miały miejsce.

Podpis:

cancel(): Promise<void>;

Zwroty:

Obietnica<pusta>

Rozwiązuje się po zakończeniu synchronizacji z serwerem.

OnDisconnect.remove()

Zapewnia usunięcie danych w tej lokalizacji po rozłączeniu klienta (z powodu zamknięcia przeglądarki, przejścia do nowej strony lub problemów z siecią).

Podpis:

remove(): Promise<void>;

Zwroty:

Obietnica<pusta>

Rozwiązuje się po zakończeniu synchronizacji z serwerem.

OnDisconnect.set()

Zapewnia, że ​​dane w tej lokalizacji mają ustawioną określoną wartość, gdy klient zostanie rozłączony (z powodu zamknięcia przeglądarki, przejścia do nowej strony lub problemów z siecią).

set() jest szczególnie przydatna do implementowania systemów „obecności”, w których wartość powinna zostać zmieniona lub wyczyszczona, gdy użytkownik rozłączy się, aby inni użytkownicy widzieli go jako „offline”. Aby uzyskać więcej informacji, zobacz Włączanie funkcji offline w JavaScript .

Należy pamiętać, że operacje onDisconnect są wyzwalane tylko raz. Jeśli chcesz, aby operacja była wykonywana za każdym razem, gdy nastąpi rozłączenie, musisz za każdym razem ponownie ustanowić operację onDisconnect .

Podpis:

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

Parametry

Parametr Typ Opis
wartość nieznany Wartość, która ma zostać zapisana w tej lokalizacji po rozłączeniu (może być obiektem, tablicą, ciągiem znaków, liczbą, wartością logiczną lub wartością null).

Zwroty:

Obietnica<pusta>

Rozwiązuje się po zakończeniu synchronizacji z bazą danych.

OnDisconnect.setWithPriority()

Zapewnia, że ​​dane w tej lokalizacji mają ustawioną określoną wartość i priorytet w przypadku rozłączenia klienta (z powodu zamknięcia przeglądarki, przejścia do nowej strony lub problemów z siecią).

Podpis:

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

Parametry

Parametr Typ Opis
wartość nieznany Wartość, która ma zostać zapisana w tej lokalizacji po rozłączeniu (może być obiektem, tablicą, ciągiem znaków, liczbą, wartością logiczną lub wartością null).
priorytet numer | ciąg | zero Priorytet do zapisania (ciąg, liczba lub wartość null).

Zwroty:

Obietnica<pusta>

Rozwiązuje się po zakończeniu synchronizacji z bazą danych.

OnDisconnect.update()

Zapisuje wiele wartości w tej lokalizacji, gdy klient jest rozłączony (z powodu zamknięcia przeglądarki, przejścia do nowej strony lub problemów z siecią).

Argument values zawiera wiele par właściwość-wartość, które zostaną zapisane razem w bazie danych. Każda właściwość podrzędna może być prostą właściwością (na przykład „nazwa”) lub ścieżką względną (na przykład „nazwa/imię”) od bieżącej lokalizacji do danych do zaktualizowania.

W przeciwieństwie do metody set() , metody update() można używać do selektywnego aktualizowania tylko właściwości, do których istnieją odniesienia, w bieżącej lokalizacji (zamiast zastępowania wszystkich właściwości podrzędnych w bieżącej lokalizacji).

Podpis:

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

Parametry

Parametr Typ Opis
wartości obiekt Obiekt zawierający wiele wartości.

Zwroty:

Obietnica<pusta>

Rozwiązuje się po zakończeniu synchronizacji z bazą danych.