La función "Compilar al guardar" no me funciona después de actualizar a Visual Studio 2015. Cuando hago un cambio en un .ts
archivo en mi proyecto y lo guardo, la barra de estado en la parte inferior del IDE dice Output(s) generated successfully
, pero el .js
archivo generado no no cambia.
Esto es lo que probé:
agregando lo siguiente al
<Project>
elemento raíz en my.csproj
:<PropertyGroup> <TypeScriptCompileOnSaveEnabled>True</TypeScriptCompileOnSaveEnabled> </PropertyGroup>
marcando y desmarcando la opción "Compilar automáticamente archivos TypeScript que no forman parte de un proyecto" en
Tools -> Options -> TypeScript -> Project
:verificación dos veces para asegurarse de que "Compilar al guardar" esté marcado en las propiedades de compilación de TypeScript de mi proyecto:
¿Qué me estoy perdiendo?
Como nota al margen, el paso de compilación de TypeScript funciona como se esperaba cuando se activa con una compilación normal.
fuente
Respuestas:
Para mí fue esta opción en
tsconfig.json
:"compileOnSave": true, "compilerOptions": { ... },
Reinicie Visual Studio para que este cambio surta efecto.
fuente
"watch": true
acompilerOptions
funcionó para mí en Visual Studio 2015 Update 2 con Typescript 1.8.29.0.csproj
archivo a simplemente usar eltsconfig.json
. Si la página de propiedades de TypeScript de su proyecto no está deshabilitada, probablemente significa que tiene instalada una versión anterior de las herramientas de TypeScript para Visual Studio y debe instalar microsoft.com/en-us/download/details.aspx?id=48593Me encontré con este problema hoy: lo solucioné usando la nueva
"watch":true
opción de compilador, también disponible a través de JSON en las versiones más recientes de TypeScript:{ "compilerOptions": { "watch": true } }
Después de hacer eso, tuve que resolver otro problema relacionado con el siguiente error que apareció en la ventana de salida:
Object doesn't support property or method 'watchFile'
Resultó que mi sistema estaba usando una versión desactualizada de TypeScript (1.0.x), a pesar de que estaba seguro de que tenía uno más nuevo que venía con Visual Studio 2015 Update 1 (1.7). Si se encuentra con este problema, puede verificar fácilmente su versión de tsc escribiendo
tsc -v
desde un símbolo del sistema.Si dice
1.0.x
o algo <1.7, probablemente se deba al hecho de que tiene algunas referencias antiguas en su variable de entorno PATH. Asegúrese de tener la versión 1.7 o posterior instalada comprobando dentro de su carpeta Microsoft SDK, que es la que utiliza Visual Studio para instalar los paquetes de TypeScript a medida que se actualizan:Si no es así, actualice en consecuencia. Abra CPanel > Sistema > Avanzado > Variables de entorno , seleccione Variables del sistema y haga clic en Editar ; navegue por la lista buscando cualquier referencia a la carpeta de TypeScript, cambie uno de ellos para que apunte a su versión instalada más reciente de TypeScript (
1.7
o superior) y elimine cualquier otro duplicado. Vea también la captura de pantalla a continuación:Para obtener más detalles, lea esta publicación en mi blog.
fuente
Solución:
Para mí, y estoy bastante seguro de que este también es el caso de otros, esto se debió a un error en tsconfig.json.
Necesita agregar "compileOnSave": verdadero. Pero en la sección global no dentro de compilerOptions.
Wrong: { "compilerOptions": { "noImplicitAny": false, "noEmitOnError": true, "removeComments": false, "sourceMap": true, "target": "es5", "compileOnSave": true }, "exclude": [ "node_modules", "wwwroot" ] } Correct: { "compilerOptions": { "noImplicitAny": false, "noEmitOnError": true, "removeComments": false, "sourceMap": true, "target": "es5" }, "compileOnSave": true, "exclude": [ "node_modules", "wwwroot" ] }
Atentamente,
Anders Both Basechat.
fuente
Este problema parece haberse resuelto con la actualización más reciente de la
TypeScript Language Services
extensión.Consulte esta respuesta para obtener instrucciones sobre cómo aplicar esta actualización.
fuente
En mi caso, instalé Visual Studio Community 2015 junto con VS 2012. Había estado usando Web Essentials para mecanografiar en 2012, lo que parecía entrar en conflicto con 2015.
La desinstalación de Web Essentials en 2012 solucionó el problema.
fuente
Con TypeScript 2 tienes que eliminar "outDir": de tu tsconfig. Solucione el error por mí en Visual Studio.
fuente
En las propiedades del proyecto -> "Compilación de TypeScript", también puede simplemente desmarcar "No emitir resultados si se informa algún error". Tenerlo marcado parece desactivar la transpilación al guardar, donde hay un error o no.
fuente
No
"compileOnSave": true,
estaba funcionando para mí. Finalmente descubrí que Visual Studio no respeta el"compileOnSave": true,
valor si está definido en otro.json
archivo que está extendiendo. Tiene que estar en la raíz para que funcione.fuente
localice el archivo, es decir, C: \ file.ts en su
terminal/cmd
y escribatsc file.ts -w // watches for file changes and converts on save
fuente
Compruebe si tiene instalada la versión de TypeScript que está configurada en el proyecto. De alguna manera, no recibí ninguna advertencia de que no tengo TypeScript 3.7 instalado, pero la función de compilar al guardar dejó de funcionar en silencio.
Una vez que instalé TypeScript 3.7, volvió a funcionar.
fuente
Exactamente el mismo problema aquí. Estoy usando Visual Studio 2015 actualización 3 y TypeScript 2.9.2.0. En herramientas / opciones / proyectos y soluciones / herramientas web externas, actualicé $ (PATH) a la segunda posición. Con todas estas configuraciones, compileOnSave: true no funciona para mí. La solución alternativa es abrir una línea de comando, ejecutar
ng build --watch
en el lateral y dejar que el nodo se encargue de la compilación automáticafuente
No estoy seguro de si esto ayudará a alguien.
Pensé que estaba teniendo problemas para compilar, pero estaba compilando al guardar. Simplemente no tenía la barra de herramientas del explorador de soluciones activada para mostrar todos los archivos.
El archivo estaba allí, esperando con impaciencia ser agregado al proyecto.
fuente
Tuve un problema similar pero no el mismo en Visual Studio 2019
Instalé la versión anterior, TypeScript 2.9, reinicié VS y luego cobró vida
fuente