Die Funktion "Beim Speichern kompilieren" funktioniert nach dem Upgrade auf Visual Studio 2015 nicht mehr. Wenn ich eine Änderung an einer .ts
Datei in meinem Projekt vornehme und speichere, wird in der Statusleiste unten in der IDE angezeigt Output(s) generated successfully
, die generierte .js
Datei jedoch nicht nicht ändern.
Folgendes habe ich versucht:
Hinzufügen des folgenden
<Project>
Elements zum Stammelement in my.csproj
:<PropertyGroup> <TypeScriptCompileOnSaveEnabled>True</TypeScriptCompileOnSaveEnabled> </PropertyGroup>
Aktivieren und Deaktivieren der Option "TypeScript-Dateien, die nicht Teil eines Projekts sind, automatisch kompilieren" in
Tools -> Options -> TypeScript -> Project
:Überprüfen Sie noch einmal, ob "Beim Speichern kompilieren" in den TypeScript Build-Eigenschaften meines Projekts aktiviert ist:
Was vermisse ich?
Nebenbei bemerkt funktioniert der TypeScript-Kompilierungsschritt wie erwartet, wenn er durch einen regulären Build ausgelöst wird.
quelle
Antworten:
Für mich war es diese Option in
tsconfig.json
:Starten Sie Visual Studio neu, damit diese Änderung wirksam wird.
quelle
"watch": true
zucompilerOptions
arbeitete für mich auf Visual Studio 2015 Update 2 mit Typescript 1.8.29.0.csproj
Datei zur Verwendung vontsconfig.json
. Wenn die TypeScript-Seite Ihres Projekts nicht deaktiviert ist, bedeutet dies wahrscheinlich, dass Sie eine alte Version der TypeScript-Tools für Visual Studio installiert haben und microsoft.com/en-us/download/details.aspx?id=48593Ich bin heute auf dieses Problem gestoßen: Ich habe das Problem mithilfe der neuen
"watch":true
Compiler-Option behoben, die in den neuesten TypeScript-Versionen auch über JSON verfügbar ist:Danach musste ich ein anderes Problem lösen, das mit dem folgenden Fehler im Ausgabefenster zusammenhängt:
Es stellte sich heraus, dass mein System eine veraltete Version von TypeScript (1.0.x) verwendete, obwohl ich sicher war, dass ich eine neuere Version hatte, die mit dem Visual Studio 2015 Update 1 (1.7) geliefert wurde . Wenn Sie auf dieses Problem stoßen, können Sie Ihre tsc-Version einfach überprüfen, indem Sie
tsc -v
an einer Eingabeaufforderung eingeben .Wenn es heißt
1.0.x
oder etwas <1,7, liegt es wahrscheinlich daran, dass Ihre PATH-Umgebungsvariable einige alte Referenzen enthält. Stellen Sie sicher, dass Sie 1.7 oder höher installiert haben, indem Sie in Ihrem Microsoft SDKs-Ordner nachsehen, der von Visual Studio verwendet wird, um die TypeScript-Pakete zu installieren, sobald sie aktualisiert werden:Wenn nicht, aktualisieren Sie entsprechend. Öffnen Sie CPanel > System > Erweitert > Umgebungsvariablen , wählen Sie Systemvariablen aus und klicken Sie auf Bearbeiten . Durchsuchen Sie die Liste nach Verweisen auf den TypeScript-Ordner, ändern Sie einen davon, damit er auf die zuletzt installierte TypeScript-Version (
1.7
oder höher) verweist, und löschen Sie alle anderen Dupes. Siehe auch Screenshot unten:Für weitere Details lesen Sie diesen Beitrag in meinem Blog.
quelle
Lösung:
Für mich, und ich bin mir ziemlich sicher, dass dies auch für andere der Fall ist, war dies auf einen Fehler in der Datei tsconfig.json zurückzuführen.
Sie müssen "compileOnSave" hinzufügen: true. Aber im globalen Bereich nicht in compilerOptions.
Freundliche Grüße,
Anders Beide Basechat.
quelle
Dieses Problem scheint mit dem letzten Update der
TypeScript Language Services
Erweiterung behoben worden zu sein .In dieser Antwort finden Sie Anweisungen zum Anwenden dieses Updates.
quelle
In meinem Fall hatte ich Visual Studio Community 2015 zusammen mit VS 2012 installiert. 2012 hatte ich Web Essentials für Typoskript verwendet, was mit 2015 in Konflikt zu geraten schien.
Die Deinstallation von Web Essentials im Jahr 2012 hat das Problem für mich behoben.
quelle
Mit Typoskript 2 müssen Sie "outDir": aus Ihrer tsconfig löschen. Beheben Sie den Fehler für mich in Visual Studio.
quelle
In den Projekteigenschaften -> "TypeScript Build" können Sie auch einfach das Kontrollkästchen "Keine Ausgaben ausgeben, wenn Fehler gemeldet werden" deaktivieren. Wenn es überprüft wird, scheint das Transpilieren beim Speichern zu deaktivieren, wenn ein Fehler vorliegt oder nicht.
quelle
Das hat
"compileOnSave": true,
bei mir nicht funktioniert. Ich habe schließlich herausgefunden, dass Visual Studio den"compileOnSave": true,
Wert nicht berücksichtigt , wenn er in einer anderen.json
Datei definiert ist , die Sie erweitern. Es muss sich in der Wurzel befinden, damit es funktioniert.quelle
Suchen Sie die Datei, dh C: \ file.ts, in Ihrer
terminal/cmd
und geben Sie einquelle
Genau das gleiche Problem hier. Ich verwende Visual Studio 2015 Update 3 und TypeScript 2.9.2.0. In Tools / Optionen / Projekte und Lösungen / externe Web-Tools habe ich $ (PATH) auf die zweite Position aktualisiert. Bei all diesen Konfigurationen funktioniert compileOnSave: true bei mir nicht. Die Problemumgehungslösung besteht darin, eine Befehlszeile zu öffnen,
ng build --watch
seitlich auszuführen und den Knoten die automatische Kompilierung übernehmen zu lassenquelle
Überprüfen Sie, ob Sie die TypeScript-Version installiert haben, die im Projekt konfiguriert ist. Irgendwie erhielt ich keine Warnung, dass TypeScript 3.7 nicht installiert ist, aber die Funktion zum Kompilieren beim Speichern funktioniert nicht mehr.
Nachdem ich TypeScript 3.7 installiert hatte, funktionierte es wieder.
quelle
Ich bin mir nicht sicher, ob dies jemandem helfen wird.
Ich hatte zwar Probleme beim Kompilieren, aber es wurde beim Speichern kompiliert. Ich hatte einfach nicht die Symbolleiste meines Lösungs-Explorers umgeschaltet, um alle Dateien anzuzeigen.
Die Datei war da und wartete nur ungeduldig darauf, dem Projekt hinzugefügt zu werden.
quelle
Ich hatte ein ähnliches, aber nicht dasselbe Problem in Visual Studio 2019
Ich habe die ältere Version TypeScript 2.9 installiert, VS neu gestartet und sie ist dann zum Leben erweckt worden
quelle