OnDisconnect class

Класс onDisconnect позволяет записывать или очищать данные, когда ваш клиент отключается от сервера базы данных. Эти обновления происходят независимо от того, отключается ли ваш клиент корректно или нет, поэтому вы можете положиться на них в очистке данных даже в случае разрыва соединения или сбоя клиента.

Класс onDisconnect чаще всего используется для управления присутствием в приложениях, где полезно определить, сколько клиентов подключено и когда другие клиенты отключаются. Дополнительную информацию см. в разделе «Включение автономных возможностей в JavaScript» .

Чтобы избежать проблем, когда соединение разрывается до того, как запросы могут быть переданы на сервер базы данных, эти функции следует вызывать перед записью каких-либо данных.

Обратите внимание, что операции onDisconnect запускаются только один раз. Если вы хотите, чтобы операция выполнялась каждый раз при отключении, вам потребуется повторно устанавливать операции onDisconnect каждый раз при повторном подключении.

Подпись:

export declare class OnDisconnect 

Методы

Метод Модификаторы Описание
отмена() Отменяет все ранее поставленные в очередь события установки или обновления onDisconnect() для этого местоположения и всех дочерних элементов. Если запись для этого местоположения была поставлена ​​в очередь с помощью set() или update() в родительском расположении, запись в этом расположении будет отменена, хотя записи в одноуровневые местоположения все равно будут выполняться.
удалять() Гарантирует удаление данных в этом месте при отключении клиента (из-за закрытия браузера, перехода на новую страницу или проблем с сетью).
установить (значение) Гарантирует, что для данных в этом месте установлено указанное значение, когда клиент отключен (из-за закрытия браузера, перехода на новую страницу или проблем с сетью). set() особенно полезен для реализации систем «присутствия», где значение должно быть изменено или очищено, когда пользователь отключается, чтобы они отображались «автономными» для других пользователей. Дополнительную информацию см. в разделе «Включение автономных возможностей в JavaScript» . Обратите внимание, что операции onDisconnect запускаются только один раз. Если вы хотите, чтобы операция выполнялась каждый раз при отключении, вам необходимо каждый раз заново устанавливать операции onDisconnect .
setWithPriority (значение, приоритет) Гарантирует, что данным в этом местоположении присвоено указанное значение и приоритет, когда клиент отключен (из-за закрытия браузера, перехода на новую страницу или проблем с сетью).
обновление (значения) Записывает несколько значений в это место, когда клиент отключен (из-за закрытия браузера, перехода на новую страницу или проблем с сетью). Аргумент values содержит несколько пар свойство-значение, которые будут записаны в базу данных вместе. Каждое дочернее свойство может быть либо простым свойством (например, «имя»), либо относительным путем (например, «имя/первое») от текущего местоположения к обновляемым данным. В отличие от метода set() , update() можно использовать для выборочного обновления только свойств, на которые имеются ссылки, в текущем местоположении (вместо замены всех дочерних свойств в текущем местоположении).

OnDisconnect.cancel()

Отменяет все ранее поставленные в очередь события установки или обновления onDisconnect() для этого местоположения и всех дочерних элементов.

Если запись для этого местоположения была поставлена ​​в очередь с помощью set() или update() в родительском расположении, запись в этом расположении будет отменена, хотя записи в одноуровневые местоположения все равно будут выполняться.

Подпись:

cancel(): Promise<void>;

Возврат:

Обещание<void>

Решается после завершения синхронизации с сервером.

OnDisconnect.remove()

Гарантирует удаление данных в этом месте при отключении клиента (из-за закрытия браузера, перехода на новую страницу или проблем с сетью).

Подпись:

remove(): Promise<void>;

Возврат:

Обещание<void>

Решается после завершения синхронизации с сервером.

ОнDisconnect.set()

Гарантирует, что для данных в этом месте установлено указанное значение, когда клиент отключен (из-за закрытия браузера, перехода на новую страницу или проблем с сетью).

set() особенно полезен для реализации систем «присутствия», где значение должно быть изменено или очищено, когда пользователь отключается, чтобы они отображались «автономными» для других пользователей. Дополнительную информацию см. в разделе «Включение автономных возможностей в JavaScript» .

Обратите внимание, что операции onDisconnect запускаются только один раз. Если вы хотите, чтобы операция выполнялась каждый раз при отключении, вам необходимо каждый раз заново устанавливать операции onDisconnect .

Подпись:

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

Параметры

Параметр Тип Описание
ценить неизвестный Значение, которое будет записано в это место при отключении (может быть объектом, массивом, строкой, числом, логическим значением или нулем).

Возврат:

Обещание<void>

Решается после завершения синхронизации с базой данных.

Ондисконнект.setWithPriority()

Гарантирует, что данным в этом местоположении присвоено указанное значение и приоритет, когда клиент отключен (из-за закрытия браузера, перехода на новую страницу или проблем с сетью).

Подпись:

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

Параметры

Параметр Тип Описание
ценить неизвестный Значение, которое будет записано в это место при отключении (может быть объектом, массивом, строкой, числом, логическим значением или нулем).
приоритет номер | строка | нулевой Приоритет записи (строка, число или ноль).

Возврат:

Обещание<void>

Решается после завершения синхронизации с базой данных.

OnDisconnect.update()

Записывает несколько значений в это место, когда клиент отключен (из-за закрытия браузера, перехода на новую страницу или проблем с сетью).

Аргумент values содержит несколько пар свойство-значение, которые будут записаны в базу данных вместе. Каждое дочернее свойство может быть либо простым свойством (например, «имя»), либо относительным путем (например, «имя/первое») от текущего местоположения к обновляемым данным.

В отличие от метода set() , update() можно использовать для выборочного обновления только свойств, на которые имеются ссылки, в текущем местоположении (вместо замены всех дочерних свойств в текущем местоположении).

Подпись:

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

Параметры

Параметр Тип Описание
ценности объект Объект, содержащий несколько значений.

Возврат:

Обещание<void>

Решается после завершения синхронизации с базой данных.