1
resposta

Erro declaração de váriavel

Boa noite.

Ao fazer a declaração de váriaveis, esta me retornando erro abaixo:

/** A propriedade 'valor' não tem nenhum inicializador e não está definitivamente atribuída no construtor.

Como posso fazer para não ter mais esse tipo de problema?

at.

1 resposta

Olá, Paulo! Tudo bem?

Este erro apenas significa que a variável não possui um valor padrão, e precisa em sua inicialização. Para resolver isso, passe um valor para ela logo na declaração:

valor: number = 0;

Ou:

constructor() {
        this.valor = 0;
}

Ambas as soluções são possíveis. Entretanto, perceba que o instrutor não precisou implementar nenhuma. Isso ocorre porque ele não possui a opção strictPropertyInicialization habilitada na configuração do TypeScript dele. Você também pode desabilitar, no seu tsconfig.json:

{
  "compilerOptions": {
    ...
    "strictPropertyInitialization": false // adicione esta linha dentro do objeto `compilerOptions`.
  }
}

Há mais uma solução, que é forçar o TypeScript a ignorar esta regra para a propriedade, com a inclusão do !:

valor!: number;

Principalmente para este curso, qualquer opção que resolva seu problema é válido, inclusive o instrutor irá refinar o código mais adiante. Beleza?

Espero ter ajudado! Bons estudos e qualquer coisa estou à disposição!