database.DataSnapshot class

Интерфейс, представляющий снимок данных базы данных Firebase Realtime.

Подпись:

export declare class DataSnapshot implements database.DataSnapshot 

Реализует: dataSnapshot.DataSnapshot.

Конструкторы

Конструктор Модификаторы Описание
(конструктор)(данные, путь, приложение, экземпляр) Создает новый экземпляр класса DataSnapshot

Характеристики

Свойство Модификаторы Тип Описание
пример нить
ключ строка | нулевой Ключ (последняя часть пути) местоположения этого DataSnapshot . Последний токен в местоположении базы данных считается ее ключом. Например, «ada» — это ключ узла /users/ada/ . Доступ к ключу в любом DataSnapshot возвращает ключ для местоположения, в котором он был создан. Однако доступ к ключу корневого URL-адреса базы данных возвращает значение null .
ссылка база данных.Ссылка Возвращает [ Reference ](/docs/reference/admin/node/admin.database.Reference) к местоположению базы данных, в котором произошла инициирующая запись. Имеет полный доступ на чтение и запись.

Методы

Метод Модификаторы Описание
ребенок (детский путь) Получает DataSnapshot для местоположения по указанному относительному пути. Относительный путь может быть либо простым дочерним именем (например, «ada»), либо более глубоким путем, разделенным косой чертой (например, «ada/name/first»).
существует() Возвращает true , если этот DataSnapshot содержит какие-либо данные. Это немного более эффективно, чем использование snapshot.val() !== null . true , если этот DataSnapshot содержит какие-либо данные; в противном случае false .
экспортВал() Экспортирует все содержимое DataSnapshot как объект JavaScript. Содержимое DataSnapshot в виде значения JavaScript (объект, массив, строка, число, логическое значение или null ).
forEach (действие) Перечисляет DataSnapshot дочерних элементов. Из-за особенностей работы объектов JavaScript не гарантируется, что порядок данных в объекте JavaScript, возвращаемом функцией val() , будет соответствовать порядку на сервере или порядку событий child_added . Вот тут-то и пригодится forEach() . Это гарантирует, что дочерние элементы DataSnapshot могут быть повторены в порядке их запроса. Если явный метод orderBy*() не используется, результаты возвращаются в порядке ключа (если не используются приоритеты, в этом случае результаты возвращаются по приоритету).
getPriority() Получает значение приоритета данных в этом DataSnapshot . В качестве альтернативы использованию приоритета приложения могут упорядочивать коллекции по обычным свойствам. См. раздел [Сортировка и фильтрация данных](/docs/database/web/lists-of-data#sorting_and_filtering_data). Приоритетное значение данных.
имеетChild(childPath) Возвращает true если указанный дочерний путь содержит данные (отличные от null ).
имеетДети() Возвращает информацию о том, имеет ли DataSnapshot какие-либо дочерние свойства, отличные от null . Вы можете использовать hasChildren() , чтобы определить, есть ли у DataSnapshot дочерние элементы. Если да, вы можете перечислить их с помощью forEach() . Если это не так, то либо этот снимок содержит примитивное значение (которое можно получить с помощью val() ), либо он пуст (в этом случае val() возвращает null ). true , если у этого снимка есть дочерние элементы; иначе false .
numChildren() Возвращает количество дочерних свойств этого DataSnapshot . Количество дочерних свойств этого DataSnapshot .
toJSON() Возвращает сериализуемое в формате JSON представление этого объекта. Сериализуемое в формате JSON представление этого объекта.
вал() Извлекает значение JavaScript из DataSnapshot . В зависимости от данных в DataSnapshot метод val() может возвращать скалярный тип (строку, число или логическое значение), массив или объект. Он также может вернуть null , указывающее, что DataSnapshot пуст (не содержит данных). Содержимое снимка в виде значения JavaScript (объект, массив, строка, число, логическое значение или null ).

база данных.DataSnapshot.(конструктор)

Создает новый экземпляр класса DataSnapshot

Подпись:

constructor(data: any, path?: string, // path is undefined for the database root
    app?: App, instance?: string);

Параметры

Параметр Тип Описание
данные любой
путь нить
приложение Приложение
пример нить

база данных.DataSnapshot.instance

Подпись:

instance: string;

база данных.DataSnapshot.key

Ключ (последняя часть пути) расположения этого DataSnapshot .

Последний токен в местоположении базы данных считается ее ключом. Например, «ada» — это ключ узла /users/ada/ . Доступ к ключу в любом DataSnapshot возвращает ключ для местоположения, в котором он был создан. Однако доступ к ключу корневого URL-адреса базы данных возвращает значение null .

Подпись:

get key(): string | null;

база данных.DataSnapshot.ref

Возвращает [ Reference ](/docs/reference/admin/node/admin.database.Reference) в расположение базы данных, где произошла инициирующая запись. Имеет полный доступ на чтение и запись.

Подпись:

get ref(): database.Reference;

база данных.DataSnapshot.child()

Получает DataSnapshot для местоположения по указанному относительному пути.

Относительный путь может быть либо простым дочерним именем (например, «ada»), либо более глубоким путем, разделенным косой чертой (например, «ada/name/first»).

Подпись:

child(childPath: string): DataSnapshot;

Параметры

Параметр Тип Описание
ребенокПуть нить

Возврат:

Снимок данных

база данных.DataSnapshot.exists()

Возвращает true , если этот DataSnapshot содержит какие-либо данные. Это немного более эффективно, чем использование snapshot.val() !== null .

true , если этот DataSnapshot содержит какие-либо данные; в противном случае false .

Подпись:

exists(): boolean;

Возврат:

логическое значение

база данных.DataSnapshot.exportVal()

Экспортирует все содержимое DataSnapshot как объект JavaScript.

Содержимое DataSnapshot в виде значения JavaScript (объект, массив, строка, число, логическое значение или null ).

Подпись:

exportVal(): any;

Возврат:

любой

база данных.DataSnapshot.forEach()

Перечисляет DataSnapshot s детских предметов.

Из-за особенностей работы объектов JavaScript не гарантируется, что порядок данных в объекте JavaScript, возвращаемом функцией val() , будет соответствовать порядку на сервере или порядку событий child_added . Вот тут-то и пригодится forEach() . Это гарантирует, что дочерние элементы DataSnapshot могут быть повторены в порядке их запроса.

Если явный метод orderBy*() не используется, результаты возвращаются в порядке ключа (если не используются приоритеты, в этом случае результаты возвращаются по приоритету).

Подпись:

forEach(action: (a: DataSnapshot) => boolean | void): boolean;

Параметры

Параметр Тип Описание
действие (a: Снимок данных ) => логическое | пустота Функция, вызываемая для каждого дочернего DataSnapshot . Обратный вызов может вернуть true , чтобы отменить дальнейшее перечисление. true , если перечисление было отменено из-за того, что ваш обратный вызов вернул true .

Возврат:

логическое значение

база данных.DataSnapshot.getPriority()

Получает значение приоритета данных в этом DataSnapshot .

В качестве альтернативы использованию приоритета приложения могут упорядочивать коллекции по обычным свойствам. См. раздел [Сортировка и фильтрация данных](/docs/database/web/lists-of-data#sorting_and_filtering_data).

Приоритетное значение данных.

Подпись:

getPriority(): string | number | null;

Возврат:

строка | номер | нулевой

база данных.DataSnapshot.hasChild()

Возвращает true , если указанный дочерний путь имеет ( null ) данные.

Подпись:

hasChild(childPath: string): boolean;

Параметры

Параметр Тип Описание
ребенокПуть нить

Возврат:

логическое значение

база данных.DataSnapshot.hasChildren()

Возвращает информацию о том, имеет ли DataSnapshot какие-либо дочерние свойства, отличные от null .

Вы можете использовать hasChildren() , чтобы определить, есть ли у DataSnapshot дочерние элементы. Если да, вы можете перечислить их, используя forEach() . Если это не так, то либо этот снимок содержит примитивное значение (которое можно получить с помощью val() ) или пусто (в этом случае val() возвращает значение null ).

true , если у этого снимка есть дочерние элементы; иначе false .

Подпись:

hasChildren(): boolean;

Возврат:

логическое значение

база данных.DataSnapshot.numChildren()

Возвращает количество дочерних свойств этого DataSnapshot . .

Количество дочерних свойств этого DataSnapshot .

Подпись:

numChildren(): number;

Возврат:

число

база данных.DataSnapshot.toJSON()

Возвращает сериализуемое в формате JSON представление этого объекта.

Сериализуемое в формате JSON представление этого объекта.

Подпись:

toJSON(): Record<string, unknown>;

Возврат:

Запись<строка, неизвестна>

база данных.DataSnapshot.val()

Извлекает значение JavaScript из DataSnapshot .

В зависимости от данных в DataSnapshot , метод val() может возвращать скалярный тип (строку, число или логическое значение), массив или объект. Он также может вернуть null , указывая, что DataSnapshot пуст (не содержит данных).

Содержимое снимка в виде значения JavaScript (объект, массив, строка, число, логическое значение или null . ).

Подпись:

val(): any;

Возврат:

любой