He estado trabajando en una biblioteca de JavaScript y quiero documentarla usando archivos de declaración de TypeScript. Ahora, el problema es que no podía entender cómo trabajar con el archivo mientras desarrollaba la biblioteca en Visual Studio Code.
Así que he configurado este ejemplo simple.
Aquí está mi estructura de directorios:
learning |-- index.js |-- greeting.js |-- greeting.d.ts Supongamos que tengo el siguiente archivo greeting.d.ts que documenta la clase Greeting :
// greeting.d.ts export class Greeting { constructor(msg: string) greet(): void } Y aquí está el archivo greeting.js que define la lógica de la clase Greeting :
// greeting.js class Greeting { constructor(msg) { this.msg = msg; } greet() { console.log(this.msg); } } module.exports = Greeting; Este archivo es importado por index.js por lo que hago un simple saludo:
// index.js var Greeting = require('./greet.js'); var g = new Greeting('Hello World!'); g.greet();Como está claro, actualmente estoy usando los módulos de estilo CommonJS.
Ahora, mientras trabajo en mis archivos JS (tenga en cuenta que no estoy trabajando en un entorno de TypeScript; por ahora quiero usar TypeScript solo con fines de documentación ), como index.js y greeting.js , quiero poder para obtener intellisense basado en el archivo greeting.d.ts .
He probado muchas opciones, como establecer las opciones de typeRoots en el archivo tsconfig.json ubicado dentro del directorio learning o modificar la propiedad include en el mismo archivo tsconfig.json , pero ninguna parece ser una solución.
¿Cómo usar un archivo de declaración .d.ts en un entorno JS dentro de VSCode?