Angular: Corregir error "Property 'xxxxxxxx' has no initializer and is not definitely assigned in the constructor."

Enviado por tech4life el

Este mensaje : "Property 'xxxxxxxx' has no initializer and is not definitely assigned in the constructor." ocurre muy frecuentemente en Angular cuando declaramos una propiedad pero no le asignamos un valor ni la inicializamos en el constructor.

Esto se debe al funcionamiento de TypeScript, que pretende asegurar que todas las propiedades estan inicializadas antes de que sean usadas en el código, por bien que a veces no podemos inicializarlas con un valor por defecto, ya sea al declararla o en el constructor. Pero nosotros sabemos que antes de utilizarla , tendrá valor.

Para ello tenemos 3 posibles soluciones

1.- Inicializar la propiedad con un valor

2.- Asignarle un valor en el constructor de nuestra clase

3.- Utilizar la aserción de asignación (assignment assertion) mediante el caracter ("!"), indicandole a TypeScript que debe omitir la verificación y que seremos nosotros como desarrolladores los que aseguramos que en el momento de usarse, tendrá valor.

 

Lenguaje
Nivel

Contenido Relacionado