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.
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.
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!