definición de tipo de TypeScript para bibliotecas globales
Tengo un problema con los tipos en ts.
He cargado algunas bibliotecas globales en el archivo index.html y quiero usarlas en mi main.ts
No puedo instalar la biblioteca desde npm para usar su definición incorporada y no hay definiciones para ella en el paquete @types.
¿Cómo puedo introducir mi propio archivo .d.ts como su definición?
Había intentado /// <reference path="path/to/file/myModule.d.ts"/> y en ese archivo tengo algo como esto
declare namespace X {
...
...
}
pero cuando en el archivo main.ts quiero usar X.type como un tipo, generará un error
TS2503: No se puede encontrar el espacio de nombres 'X'.
¿Qué debo hacer?
Respuesta #1
Puedes establecer tu propio directorio con definiciones de tipos en tsconfig.json, por ejemplo, el directorio typings:
{
"compilerOptions": {
"typeRoots" : ["./node_modules/@types", "./typings"]
}
}
Si configuras la propiedad typeRoots en la configuración, node_modules/@types (que está por defecto) no se tendrá en cuenta, por eso deberías establecer esos dos en el array
