DataSnapshot class

Um DataSnapshot contém dados de um local de banco de dados.

Sempre que você lê dados do banco de dados, você recebe os dados como um DataSnapshot . Um DataSnapshot é passado para os retornos de chamada de evento que você anexa com on() ou once() . Você pode extrair o conteúdo do instantâneo como um objeto JavaScript chamando o método val() . Como alternativa, você pode percorrer o instantâneo chamando child() para retornar instantâneos filhos (nos quais você pode chamar val() ).

Um DataSnapshot é uma cópia imutável e gerada com eficiência dos dados em um local do banco de dados. Ele não pode ser modificado e nunca mudará (para modificar dados, você sempre chama o método set() em uma Reference diretamente).

Assinatura:

export declare class DataSnapshot 

Propriedades

Propriedade Modificadores Tipo Descrição
chave seqüência de caracteres | nulo A chave (última parte do caminho) da localização deste DataSnapshot . O último token em um local do banco de dados é considerado sua chave. Por exemplo, "ada" é a chave para o nó /users/ada/. Acessar a chave em qualquer DataSnapshot retornará a chave para o local que a gerou. No entanto, acessar a chave na URL raiz de um banco de dados retornará null .
prioridade seqüência de caracteres | número | nulo Obtém o valor de prioridade dos dados neste DataSnapshot . Os aplicativos não precisam usar prioridade, mas podem ordenar coleções por propriedades comuns (consulte Classificando e filtrando dados ).
ref Referência do banco de dados A localização deste DataSnapshot.
tamanho número Retorna o número de propriedades filho deste DataSnapshot .

Métodos

Método Modificadores Descrição
filho(caminho) Obtém outro DataSnapshot para o local no caminho relativo especificado. Passar um caminho relativo para o método child() de um DataSnapshot retorna outro DataSnapshot para o local no caminho relativo especificado. O caminho relativo pode ser um nome filho simples (por exemplo, "ada") ou um caminho mais profundo separado por barra (por exemplo, "ada/nome/primeiro"). Se o local filho não tiver dados, um DataSnapshot vazio (ou seja, um DataSnapshot cujo valor é null ) será retornado.
existe() Retorna verdadeiro se este DataSnapshot contiver quaisquer dados. É um pouco mais eficiente do que usar snapshot.val() !== null .
exportVal() Exporta todo o conteúdo do DataSnapshot como um objeto JavaScript. O método exportVal() é semelhante a val() , exceto que as informações de prioridade estão incluídas (se disponíveis), tornando-o adequado para fazer backup de seus dados.
paraCada(ação) Enumera os filhos de nível superior no IteratedDataSnapshot . Devido à maneira como os objetos JavaScript funcionam, não há garantia de que a ordem dos dados no objeto JavaScript retornado por val() corresponda à ordem no servidor nem à ordem dos eventos onChildAdded() . É aí que forEach() é útil. Ele garante que os filhos de um DataSnapshot serão iterados em sua ordem de consulta. Se nenhum método orderBy*() explícito for usado, os resultados serão retornados ordenados por chave (a menos que prioridades sejam usadas; nesse caso, os resultados serão retornados por prioridade).
hasChild(caminho) Retorna true se o caminho filho especificado tiver dados (não nulos).
temFilhos() Retorna se o DataSnapshot tem ou não propriedades filhas não null . Você pode usar hasChildren() para determinar se um DataSnapshot tem filhos. Em caso afirmativo, você pode enumerá-los usando forEach() . Caso contrário, esse instantâneo contém um valor primitivo (que pode ser recuperado com val() ) ou está vazio (nesse caso, val() retornará null ).
toJSON() Retorna uma representação serializável em JSON desse objeto.
val() Extrai um valor JavaScript de um DataSnapshot . Dependendo dos dados em um DataSnapshot , o método val() pode retornar um tipo escalar (string, número ou booleano), uma matriz ou um objeto. Ele também pode retornar nulo, indicando que o DataSnapshot está vazio (não contém dados).

DataSnapshot.key

A chave (última parte do caminho) da localização deste DataSnapshot .

O último token em um local do banco de dados é considerado sua chave. Por exemplo, "ada" é a chave para o nó /users/ada/. Acessar a chave em qualquer DataSnapshot retornará a chave para o local que a gerou. No entanto, acessar a chave na URL raiz de um banco de dados retornará null .

Assinatura:

get key(): string | null;

DataSnapshot.priority

Obtém o valor de prioridade dos dados neste DataSnapshot .

Os aplicativos não precisam usar prioridade, mas podem ordenar coleções por propriedades comuns (consulte Classificando e filtrando dados ).

Assinatura:

get priority(): string | number | null;

DataSnapshot.ref

A localização deste DataSnapshot.

Assinatura:

readonly ref: DatabaseReference;

DataSnapshot.size

Retorna o número de propriedades filhas deste DataSnapshot .

Assinatura:

get size(): number;

DataSnapshot.child()

Obtém outro DataSnapshot para o local no caminho relativo especificado.

Passar um caminho relativo para o método child() de um DataSnapshot retorna outro DataSnapshot para o local no caminho relativo especificado. O caminho relativo pode ser um nome filho simples (por exemplo, "ada") ou um caminho mais profundo separado por barra (por exemplo, "ada/nome/primeiro"). Se o local filho não tiver dados, um DataSnapshot vazio (ou seja, um DataSnapshot cujo valor é null ) é retornado.

Assinatura:

child(path: string): DataSnapshot;

Parâmetros

Parâmetro Tipo Descrição
caminho corda Um caminho relativo para o local dos dados filho.

Retorna:

DataSnapshot

DataSnapshot.exists()

Retorna verdadeiro se este DataSnapshot contiver quaisquer dados. É um pouco mais eficiente do que usar snapshot.val() !== null .

Assinatura:

exists(): boolean;

Retorna:

boleano

DataSnapshot.exportVal()

Exporta todo o conteúdo do DataSnapshot como um objeto JavaScript.

O método exportVal() é semelhante a val() , exceto que as informações de prioridade estão incluídas (se disponíveis), tornando-o adequado para fazer backup de seus dados.

Assinatura:

exportVal(): any;

Retorna:

qualquer

O conteúdo do DataSnapshot como um valor JavaScript (Object, Array, string, number, boolean ou null ).

DataSnapshot.forEach()

Enumera os filhos de nível superior no IteratedDataSnapshot .

Devido à maneira como os objetos JavaScript funcionam, não há garantia de que a ordem dos dados no objeto JavaScript retornado por val() corresponda à ordem no servidor nem à ordem dos eventos onChildAdded() . É aí que forEach() é útil. Ele garante que os filhos de um DataSnapshot serão iterados em sua ordem de consulta.

Se nenhum método orderBy*() explícito for usado, os resultados serão retornados ordenados por chave (a menos que prioridades sejam usadas; nesse caso, os resultados serão retornados por prioridade).

Assinatura:

forEach(action: (child: IteratedDataSnapshot) => boolean | void): boolean;

Parâmetros

Parâmetro Tipo Descrição
Ação (filho: IteratedDataSnapshot ) => booleano | vazio Uma função que será chamada para cada DataSnapshot filho. O retorno de chamada pode retornar true para cancelar mais enumerações.

Retorna:

boleano

true se a enumeração foi cancelada devido ao seu retorno de chamada retornar true.

DataSnapshot.hasChild()

Retorna true se o caminho filho especificado tiver dados (não nulos).

Assinatura:

hasChild(path: string): boolean;

Parâmetros

Parâmetro Tipo Descrição
caminho corda Um caminho relativo para a localização de uma criança em potencial.

Retorna:

boleano

true se existirem dados no caminho filho especificado; senão false .

DataSnapshot.hasChildren()

Retorna se o DataSnapshot tem ou não propriedades filhas não null .

Você pode usar hasChildren() para determinar se um DataSnapshot tem filhos. Em caso afirmativo, você pode enumerá-los usando forEach() . Se não, então este instantâneo contém um valor primitivo (que pode ser recuperado com val() ) ou está vazio (nesse caso, val() retornará null ).

Assinatura:

hasChildren(): boolean;

Retorna:

boleano

true se este instantâneo tiver algum filho; senão falso.

DataSnapshot.toJSON()

Retorna uma representação serializável em JSON desse objeto.

Assinatura:

toJSON(): object | null;

Retorna:

objeto | nulo

DataSnapshot.val()

Extrai um valor JavaScript de um DataSnapshot .

Dependendo dos dados em um DataSnapshot , o método val() pode retornar um tipo escalar (string, número ou booleano), uma matriz ou um objeto. Ele também pode retornar nulo, indicando que o DataSnapshot está vazio (não contém dados).

Assinatura:

val(): any;

Retorna:

qualquer

O conteúdo do DataSnapshot como um valor JavaScript (Object, Array, string, number, boolean ou null ).