javascript - Typescript -w (watch) no funciona en mi instalación
He instalado Typescript 2.0.6, también tengo la instalación de Node. Si intento compilar un archivo en modo de observación con "-w", no funciona. Lanza el siguiente error.
ts5001: the current host does not support the '--watch' option
Usé el siguiente comando para compilar mi archivo de TypeScript "index.ts"
tsc -w index.ts
Si alguien sabe, por favor ayúdeme a cómo compilar el código en modo de vigilancia.
Respuesta #1
Respuesta actualizada para 2021
Hay una opción incorporada --watch/-w, consulta las opciones del compilador de TS (al final de la lista).
O una vez que tengas tsconfig.json configurado con outDir y rootDir:
{
"compilerOptions": {
/* Visit https://aka.ms/tsconfig.json to read more about this file */
/* Basic Options */
// "incremental": true, /* Enable incremental compilation */
"target": "ES2020", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */
"module": "ES2020", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */
"outDir": "src/main/resources/static/js", /* Redirect output structure to the directory. */
"rootDir": "src/main/resources/static/ts" /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */
}
}
Entonces solo puedes llamar
tsc --watch
Esta segunda opción no es algo que haya probado personalmente todavía, pero es otra opción para la vigilancia de archivos; consulte Configuring Watch para más detalles, pero aquí está su ejemplo de configuración tsconfig.json proporcionado por el sitio oficial:
{ // Some typical compiler options "compilerOptions": { "target": "es2020", "moduleResolution": "node" // ... }, // NEW: Options for file/directory watching "watchOptions": { // Use native file system events for files and directories "watchFile": "useFsEvents", "watchDirectory": "useFsEvents", // Poll files for updates more frequently // when they're updated a lot. "fallbackPolling": "dynamicPriority" } }
Respuesta #2
No puedes obtener la funcionalidad de watch ejecutando código TypeScript usando tsc
Ejecuta esto como node tsc.js -w index.ts
Fuente: https://github.com/Microsoft/TypeScript/issues/2375
