Tengo un código javascript que funciona perfectamente:
class myController { constructor () { this.language = 'english' } } PERO cuando trato de hacer lo mismo con Typescript
export default class myController { constructor () { this.language = 'english' } }Me da el siguiente error:
La propiedad 'idioma' no existe en el tipo 'myController'.ts(2339)
¿Por qué sucede exactamente esto cuando se intenta crear una propiedad para myController ?
¿Cuál sería la forma correcta de hacerlo?
Debido a que está tratando de establecer una propiedad que no existe en la clase como dice, declárela en algún lugar de la clase antes de intentar establecerla, es decir:
export default class myController { private language: string; constructor () { this.language = 'english' } }Debe declararse como una propiedad en el tipo (normalmente antes del constructor):
export default class myController { language: string; constructor () { this.language = 'english' } }