Интерфейс, представляющий снимок данных базы данных 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: IteratedDataSnapshot) => boolean | void): boolean;
Параметры
Параметр | Тип | Описание |
---|---|---|
действие | (a: IteratedDataSnapshot) => логическое значение | пустота | Функция, вызываемая для каждого дочернего 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;
Возврат:
любой