Mit der Klasse onDisconnect
können Sie Daten schreiben oder löschen, wenn Ihr Client die Verbindung zum Datenbankserver trennt. Diese Aktualisierungen erfolgen unabhängig davon, ob Ihr Client die Verbindung ordnungsgemäß trennt oder nicht. Sie können sich also darauf verlassen, dass sie die Daten bereinigen, selbst wenn eine Verbindung unterbrochen wird oder ein Client abstürzt.
Die onDisconnect
Klasse wird am häufigsten zum Verwalten der Präsenz in Anwendungen verwendet, bei denen es nützlich ist, zu erkennen, wie viele Clients verbunden sind und wann andere Clients die Verbindung trennen. Weitere Informationen finden Sie unter Offline-Funktionen in JavaScript aktivieren .
Um Probleme zu vermeiden, wenn eine Verbindung unterbrochen wird, bevor die Anforderungen an den Datenbankserver übertragen werden können, sollten diese Funktionen aufgerufen werden, bevor Daten geschrieben werden.
Beachten Sie, dass onDisconnect
Vorgänge nur einmal ausgelöst werden. Wenn Sie möchten, dass bei jedem Verbindungsabbruch ein Vorgang ausgeführt wird, müssen Sie die onDisconnect
Vorgänge jedes Mal wiederherstellen, wenn Sie die Verbindung wiederherstellen.
Unterschrift:
export declare class OnDisconnect
Methoden
Methode | Modifikatoren | Beschreibung |
---|---|---|
stornieren() | Bricht alle zuvor in die Warteschlange gestellten onDisconnect() Setz- oder Aktualisierungsereignisse für diesen Standort und alle untergeordneten Elemente ab. Wenn ein Schreibvorgang für diesen Speicherort über set() oder update() an einem übergeordneten Speicherort in die Warteschlange gestellt wurde, wird der Schreibvorgang an diesem Speicherort abgebrochen, Schreibvorgänge an gleichgeordneten Speicherorten werden jedoch weiterhin ausgeführt. | |
entfernen() | Stellt sicher, dass die Daten an diesem Speicherort gelöscht werden, wenn die Verbindung zum Client getrennt wird (aufgrund des Schließens des Browsers, des Navigierens zu einer neuen Seite oder von Netzwerkproblemen). | |
set(wert) | Stellt sicher, dass die Daten an diesem Speicherort auf den angegebenen Wert gesetzt werden, wenn die Verbindung zum Client getrennt wird (aufgrund des Schließens des Browsers, des Navigierens zu einer neuen Seite oder von Netzwerkproblemen). set() ist besonders nützlich für die Implementierung von „Präsenz“-Systemen, bei denen ein Wert geändert oder gelöscht werden soll, wenn ein Benutzer die Verbindung trennt, damit er für andere Benutzer „offline“ erscheint. Weitere Informationen finden Sie unter Offline-Funktionen in JavaScript aktivieren . Beachten Sie, dass onDisconnect Vorgänge nur einmal ausgelöst werden. Wenn Sie möchten, dass bei jedem Verbindungsabbruch ein Vorgang ausgeführt wird, müssen Sie die onDisconnect Vorgänge jedes Mal neu einrichten. | |
setWithPriority(Wert, Priorität) | Stellt sicher, dass die Daten an diesem Speicherort auf den angegebenen Wert und die angegebene Priorität gesetzt werden, wenn die Verbindung zum Client getrennt wird (aufgrund des Schließens des Browsers, des Navigierens zu einer neuen Seite oder von Netzwerkproblemen). | |
aktualisieren(Werte) | Schreibt mehrere Werte an diese Stelle, wenn die Verbindung zum Client getrennt wird (aufgrund des Schließens des Browsers, des Navigierens zu einer neuen Seite oder von Netzwerkproblemen). Das Argument values enthält mehrere Eigenschafts-Wert-Paare, die zusammen in die Datenbank geschrieben werden. Jede untergeordnete Eigenschaft kann entweder eine einfache Eigenschaft (z. B. „Name“) oder ein relativer Pfad (z. B. „Name/Vorname“) vom aktuellen Speicherort zu den zu aktualisierenden Daten sein. Im Gegensatz zur set() Methode kann update() verwendet werden, um selektiv nur die referenzierten Eigenschaften am aktuellen Speicherort zu aktualisieren (anstatt alle untergeordneten Eigenschaften am aktuellen Speicherort zu ersetzen). |
OnDisconnect.cancel()
Bricht alle zuvor in die Warteschlange gestellten onDisconnect()
Setz- oder Aktualisierungsereignisse für diesen Standort und alle untergeordneten Elemente ab.
Wenn ein Schreibvorgang für diesen Speicherort über set()
oder update()
an einem übergeordneten Speicherort in die Warteschlange gestellt wurde, wird der Schreibvorgang an diesem Speicherort abgebrochen, Schreibvorgänge an gleichgeordneten Speicherorten werden jedoch weiterhin ausgeführt.
Unterschrift:
cancel(): Promise<void>;
Kehrt zurück:
Versprechen<void>
Wird aufgelöst, wenn die Synchronisierung mit dem Server abgeschlossen ist.
OnDisconnect.remove()
Stellt sicher, dass die Daten an diesem Speicherort gelöscht werden, wenn die Verbindung zum Client getrennt wird (aufgrund des Schließens des Browsers, des Navigierens zu einer neuen Seite oder von Netzwerkproblemen).
Unterschrift:
remove(): Promise<void>;
Kehrt zurück:
Versprechen<void>
Wird aufgelöst, wenn die Synchronisierung mit dem Server abgeschlossen ist.
OnDisconnect.set()
Stellt sicher, dass die Daten an diesem Speicherort auf den angegebenen Wert gesetzt werden, wenn die Verbindung zum Client getrennt wird (aufgrund des Schließens des Browsers, des Navigierens zu einer neuen Seite oder von Netzwerkproblemen).
set()
ist besonders nützlich für die Implementierung von „Präsenz“-Systemen, bei denen ein Wert geändert oder gelöscht werden soll, wenn ein Benutzer die Verbindung trennt, damit er für andere Benutzer „offline“ erscheint. Weitere Informationen finden Sie unter Offline-Funktionen in JavaScript aktivieren .
Beachten Sie, dass onDisconnect
Vorgänge nur einmal ausgelöst werden. Wenn Sie möchten, dass bei jedem Verbindungsabbruch ein Vorgang ausgeführt wird, müssen Sie die onDisconnect
Vorgänge jedes Mal neu einrichten.
Unterschrift:
set(value: unknown): Promise<void>;
Parameter
Parameter | Typ | Beschreibung |
---|---|---|
Wert | Unbekannt | Der Wert, der beim Trennen der Verbindung an diesen Speicherort geschrieben werden soll (kann ein Objekt, ein Array, eine Zeichenfolge, eine Zahl, ein boolescher Wert oder null sein). |
Kehrt zurück:
Versprechen<void>
Wird aufgelöst, wenn die Synchronisierung mit der Datenbank abgeschlossen ist.
OnDisconnect.setWithPriority()
Stellt sicher, dass die Daten an diesem Speicherort auf den angegebenen Wert und die angegebene Priorität gesetzt werden, wenn die Verbindung zum Client getrennt wird (aufgrund des Schließens des Browsers, des Navigierens zu einer neuen Seite oder von Netzwerkproblemen).
Unterschrift:
setWithPriority(value: unknown, priority: number | string | null): Promise<void>;
Parameter
Parameter | Typ | Beschreibung |
---|---|---|
Wert | Unbekannt | Der Wert, der beim Trennen der Verbindung an diesen Speicherort geschrieben werden soll (kann ein Objekt, ein Array, eine Zeichenfolge, eine Zahl, ein boolescher Wert oder null sein). |
Priorität | Nummer | Zeichenfolge | Null | Die zu schreibende Priorität (Zeichenfolge, Zahl oder Null). |
Kehrt zurück:
Versprechen<void>
Wird aufgelöst, wenn die Synchronisierung mit der Datenbank abgeschlossen ist.
OnDisconnect.update()
Schreibt mehrere Werte an diese Stelle, wenn die Verbindung zum Client getrennt wird (aufgrund des Schließens des Browsers, des Navigierens zu einer neuen Seite oder von Netzwerkproblemen).
Das Argument values
enthält mehrere Eigenschafts-Wert-Paare, die zusammen in die Datenbank geschrieben werden. Jede untergeordnete Eigenschaft kann entweder eine einfache Eigenschaft (z. B. „Name“) oder ein relativer Pfad (z. B. „Name/Vorname“) vom aktuellen Speicherort zu den zu aktualisierenden Daten sein.
Im Gegensatz zur set()
Methode kann update()
verwendet werden, um selektiv nur die referenzierten Eigenschaften am aktuellen Speicherort zu aktualisieren (anstatt alle untergeordneten Eigenschaften am aktuellen Speicherort zu ersetzen).
Unterschrift:
update(values: object): Promise<void>;
Parameter
Parameter | Typ | Beschreibung |
---|---|---|
Werte | Objekt | Objekt, das mehrere Werte enthält. |
Kehrt zurück:
Versprechen<void>
Wird aufgelöst, wenn die Synchronisierung mit der Datenbank abgeschlossen ist.