2014-12-11 11 views
8

Ich habe Grunt ausgeführt und einen Typescript-Build-Prozess eingerichtet, der auf Dateiänderungen wartet, daher brauche ich nicht die Standard-VS-Kompilierung meiner Typoskript-Dateien, wenn ich mein Projekt speichere oder erstelle.Deaktivieren Sie die Typoskript-Kompilierung in Visual Studio 2013

Ich habe die Option 'Beim Speichern kompilieren' unter Typescript in meinen Projekteigenschaften deaktiviert, aber die ts-Dateien werden noch kompiliert. Der einzige Weg, der für mich funktioniert, ist, wenn ich die Build-Aktion einzelner TS-Dateien auf "None" setze, aber dies verursacht immer noch, dass einige Typescript-Dateien kompiliert werden. Gibt es eine Möglichkeit, dies in VS2013 zu tun?

+1

Sie eine Lösung für diese bekommen Sie? Habe zur Zeit das selbe Problem. – xvdiff

+0

Hallo xvdiff. Wie oben erwähnt, deaktivieren Sie die Option "Beim Speichern kompilieren" unter typescript in meinen Projekteigenschaften und legen Sie dann die Build-Aktion der ts-Dateien auf "none" fest. Ein bisschen langweilig, ich weiß, aber das ist der einzige Weg, wie ich es zum Laufen gebracht habe. – juju

+0

Stellen Sie sicher, dass Sie keine Web Essentials oder eine ähnliche Erweiterung haben, die beim Kompilieren kompiliert werden könnte. – moefinley

Antwort

-3

Ändern des Build Action Eigentum auf Ihren Typoskript Dateien auf etwas anderes als TypeScript Compile

4

hatte ich die gleiche Frage und Lösung, die ich gefunden Typoskript Ziele in der VS-Projektdatei außer Kraft zu setzen ist:

<Target Name="PreComputeCompileTypeScript"> 
    <Message Text="Skipping PreComputeCompileTypeScript" /> 
</Target> 
<Target Name="CompileTypeScript"> 
    <Message Text="Skipping CompileTypeScript" /> 
</Target> 
<Target Name="GetTypeScriptCopyToOutputDirectoryItems"> 
    <Message Text="Skipping GetTypeScriptCopyToOutputDirectoryItems" /> 
</Target> 
13

In VS2015 eine <TypeScriptCompileBlocked>true</TypeScriptCompileBlocked> Einstellung kann in CSPROJ

msbuild Ausgang dann

zeigen sollte das erste <PropertyGroup> Element hinzugefügt wird
PreComputeCompileTypeScript: 
    TypeScript compile is skipped because the TypeScriptCompileBlocked property is set to true. 

Von: http://rostacik.net/2015/08/14/how-to-disable-building-of-typescript-files-in-visual-studio-2015/

+0

Für mein VS2015 asp.net Core RC2-Projekt (das keine .csproj-Datei hatte), das Hinzufügen von true zu der .xproj (nicht .csproj) -Datei stoppte die Typoskript-Kompilierung, die passiert, wenn ich meine VERÖFFENTLICHEN Projekt.Typescript kompiliert beim Speichern während der Entwicklung nicht, weil ich ein tsconfig.json (ohne "compileOnSave": true) zu meinem Projekt hinzugefügt habe. Ich benutze Schluck, um für meinen Workflow zu kompilieren. Aber in meinem Fall wurde true benötigt, um die Kompilierung während der Veröffentlichung meines Projekts zu unterdrücken. Ich benutze Typescript 1.8.9. – uonchiu

1

@Christopher Mott Antwort auch für Visual Studio 2013, zumindest für Update 5 und Typoskript-Tools für Microsoft Visual Studio 2013 1.8.5.0 arbeitet. Um sicher zu sein, könnte man überprüfen, ob VS Typoskript Toolchain versteht das Flag:

öffnen .csproj-Datei für das Bestimmungsgemäße Projekt und feststellen, dass es Typoskript Ziele von einigen importiert:

$ (MSBuildExtensionsPath32) \ Microsoft \ Visualstudio \ v $ (VisualStudioVersion) \ Typoskript \ Microsoft.TypeScript.targets

, die im allgemeinen auf Karten:

C: \ Program Files (x86) \ MSBuild \ Microsoft \ Visualstudio \ < Ihre VS-Versionsnummer> \ Typoskript \ Microsoft.TypeScript.targets

die Datei überprüfen und suchen Sie nach TypeScriptCompileBlocked (als falsch definiert wird,) in einigen <PropertyGroup>. Wenn es da ist, bist du sortiert. Zurück zum .csproj Datei und fügen Sie die folgende, direkt nach dem Typoskript Ziele importiert werden:

<!-- Disable TypeScript compilation from within VS, leave that to external tools --> 
<PropertyGroup> 
    <TypeScriptCompileBlocked>True</TypeScriptCompileBlocked> 
</PropertyGroup>