Classe objeto<T, RequiredProperties>

Classe base para um Objeto de Realm.

Exemplo

Para definir uma classe Person com as propriedades name e age necessárias, defina um static schema:

class Person extends Realm.Object<Person> {
_id!: Realm.BSON.ObjectId;
name!: string;
age!: number;
static schema: Realm.ObjectSchema = {
name: "Person",
primaryKey: "_id",
properties: {
_id: "objectId",
name: "string",
age: "int",
},
};
}

Exemplo

Se estiver usando o @realm/babel-plugin: para definir uma classe Person com as propriedades name e age necessárias, elas precisariam ser especificadas no argumento de tipo quando ele estiver sendo construído para permitir definições de modelo somente Typescript :

class Person extends Realm.Object<Person, "name" | "age"> {
_id = new Realm.Types.ObjectId();
name: Realm.Types.String;
age: Realm.Types.Int;
static primaryKey = "_id";
}

Veja

Esquema de objetos

Type Param

T - O tipo dessa classe (por exemplo, se sua classe for Person, T também deve ser Person - essa duplicação é necessária devido à forma como o Typescript funciona)

Type Param

RequiredProperties - Os nomes de quaisquer propriedades desta classe que são necessárias quando uma instância é construída com new. Quaisquer propriedades não especificadas serão opcionais e assumirão como padrão um valor nulo sensível se nenhum padrão for especificado em outro lugar.

Parâmetros de tipo

  • T = DefaultObject

  • Propriedades obrigatórias estende chave de OmittedRealmTypes<t> = nunca

Construtores

Propriedades

permitirarrays de valores: booleano
assimétrico?: booleano

Como opção, especifique que o esquema deve sincronizar unidirecionalmente se estiver usando a Flexible Sync ao usar o @realm/babel-plugin.

incorporado?: booleano

Como opção, especifique que o esquema é um esquema incorporado ao usar @realm/babel-plugin.

chave primária?: string

Como opção, especifique a chave primária do esquema ao usar o @realm/babel-plugin.

Métodos

  • Retorna a string

    Obsoleto(a)

    TODO: Remova completamente assim que os testes de tipo forem encerrados.

  • Uma string que identifica exclusivamente o objeto em todos os objetos do mesmo tipo.

    Retorna a string

  • Adicione um ouvinte callback que será chamado quando uma instância de objeto ativo for alterada.

    Parâmetros

    • chamada de resposta: ObjectChangeCallback<T>

      Uma função a ser chamada quando ocorrem alterações.

    • Optional keyPaths: string | string[]

      Indica um limite inferior nas alterações relevantes para o ouvinte. Esse é um limite inferior, pois, se vários ouvintes forem adicionados (cada um com seu próprio keyPaths), a união desses caminhos-chave determinará as alterações consideradas relevantes para todos os ouvintes registrados no objeto. Em outras palavras: um ouvinte pode disparar mais do que os caminhos-chave especificam, se outros ouvintes com caminhos-chave diferentes estiverem presentes.

    Retorna nulo

    Lança

    Um TypeAssertionError se callback não for uma função.

    Exemplo

    wine.addListener((obj, changes) => {
    // obj === wine
    console.log(`object is deleted: ${changes.deleted}`);
    console.log(`${changes.changedProperties.length} properties have been changed:`);
    changes.changedProperties.forEach(prop => {
    console.log(` ${prop}`);
    });
    })

    Exemplo

    wine.addListener((obj, changes) => {
    console.log("The wine got deleted or its brand might have changed");
    }, ["brand"])

    Observação

    Adicionar o ouvinte é uma operação assíncrona, portanto, a chamada de resposta é invocada na primeira vez para notificar o chamador quando o ouvinte for adicionado. Assim, quando a chamada de resposta for invocada pela primeira vez, ele conterá uma matriz vazia para changes.changedProperties.

  • Retorna [string, desconhecido][]

    Uma array de pares chave/valor das propriedades do objeto.

    Obsoleto(a)

    Use Object.entries()

  • Obter tipo subjacente de um valor de propriedade.

    Parâmetros

    • PropertyName: string

      O nome da propriedade para recuperar o tipo de.

    Retorna a string

    Tipo subjacente do valor da propriedade.

    Lança

    Um erro se a propriedade não existir.

  • Verifica se o objeto não foi excluído e faz parte de um Realm válido.

    Retorna booleano

    true se o objeto puder ser acessado com segurança, false caso contrário.

  • Retorna a string[]

    Uma array dos nomes das propriedades do objeto.

    Obsoleto(a)

    Use Object.keys()

  • Retorna todos os objeto vinculados a este objeto no relacionamento especificado.

    Parâmetros de tipo

    • T = DefaultObject

    Parâmetros

    • objectType: string

      O tipo dos objetos vinculados ao tipo desse objeto.

    • PropertyName: string

      O nome da propriedade que referencia objetos do tipo deste objeto.

    Retorna Resultados<objeto<T, nunca> & T>

    Os resultados vinculados a esse objeto.

    Lança

    Um AssertionError se o relacionamento não for válido.

  • Parâmetros de tipo

    Parâmetros

    • objectType: Construtor<T>
    • PropertyName: string

    Retorna resultados<T>

  • Retorna a contagem total de links recebidos para este objeto

    Retorna número

    O número de links para este objeto.

  • Remover todos os ouvintes deste objeto.

    Retorna nulo

  • Remova o ouvinte callback deste objeto.

    Parâmetros

    Retorna nulo

    Lança

    Um TypeAssertionError se callback não for uma função.

  • A representação de objeto simples para serialização JSON. Use bibliotecas de serialização JSON circular, como @ongap/estruturado-clone e planas , para definir em strings entidades do Realm que possuem estruturas circulares.

    Parâmetros

    • Optional _: string
    • Optional cache: desconhecido

    Retorna DefaultObject

    Um objeto simples.

Gerado usando TypeDoc