Visual Studio 2015とTypeScriptの自動コンパイル

Visual Studio 2015 RC時代からの既知の問題ぽいのがまだ直ってなさそうなんですが、Visual Studio 2015でTypeScriptなファイルを扱う場合にプロジェクトの設定から「保存時にコンパイル」や「ソースマップを生成する」のチェックを変えて設定しても反映されないようです。
(おもに無効にしたい場合)

例えば、Node.jsなプロジェクトのTypeScriptビルド設定を以下のように無効にしても保存時に自動的にコンパイルして.jsと.js.mapファイルが生成されてしまいます。

imageimage

この際のプロジェクトファイルを見てみると以下のようになっています。
image

何が問題かというと、Condition付きのPropertyGroupに設定があってもVisual Studio 2015側で見てないぽいんですよね。
で、回避するにはCondition属性がついてないPropertyGroup(プロジェクトファイルの上部)のほうに設定を書いてあげます。

image

そうすることで設定がちゃんと反映されて.tsファイルを保存しても自動コンパイル等が走りません。

image

このあたりを参考に。

設定としては TypeScriptCompileOnSaveEnabled あたりです。
困ってる人(?)は一度試してみてください。

※なおMSBuildにはTypeScriptCompileOnSaveEnabled に対応する引数ありませんがまぁそうでしょうね

広告

Visual Studio 2015とTypeScriptの自動コンパイル」への3件のフィードバック

  1. 確かに、ソリューションをビルドした時とtsファイルを保存した時にコンパイルしてますね・・。
    そのコンパイルに違いがあって、tsファイルを保存した時だけコンパイルするようにしたいんですがどうしたらいんでしょうか・・?

    • Visual Studio上で、 対象の.tsファイルのプロパティのBuild ActionをTypeScriptCompileからNoneにすればビルドしてもコンパイルされませんがそういうことでしょうか?

      • そうです!そうです!
        解決しました。ありがとうございますm(_ _)m

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中