18

.ts ソース ファイルを .js 出力から分離しようとして、TypeScript で正式なファイル ウォッチャーを実装しようとしていますが、単一ファイルの出力パスを指定する機能が存在しないようです。

src明確にするための流れ:ディレクトリ全体の監視を開始し、たとえば に変更を加えsrc/views/HomeView.tsます。ファイルが変更されたことをノードに認識させ、コンパイル済みのバージョンを に移動させpublic/js/views/HomeView.jsます。

これを使用tsc myfile.ts --out myfile.jsすると、すべてのモジュールを通過し、適切に指定されたパスに最終ファイルを配置せずに、.ts ファイルが存在するのと同じパスでそれぞれをコンパイルします。ただし、最終的に必要な場所に空のファイルが作成されます。

不思議なんだけど:

1)--outパラメータを使用して、その 1 つのファイルのみをコンパイルすることは可能ですか? インポートをトラバースしてすべてのファイルをコンパイルしたくはありませんが、コンパイル時に構文/エラーチェックを行うだけです(これは二次的な要件であり、必須ではありません)。と

2) ファイルを適切に結合/作成できないコンパイラのバグはありますか? ここでも、path ディレクティブの最終出力--outは空ですが、ファイルは実際に作成されています。

どんな助けでも大歓迎です。

* アップデート *

まだ問題があると思うので、この質問を閉じたくはありませんが、先に進み、必要なことを達成するためにコア TypeScript コンパイラを実装し、tsc完全にバイパスしました。詳細と使用方法 については、 https://github.com/damassi/TypeScript-Watcherを参照してください。

4

1 に答える 1

16

このパラメーターを使用する--outと、コンパイラーが依存関係を調べて最終ファイルの正しい順序を計算する単一のファイルが得られます。

例えば...

tsc --out final.js app.ts

依存関係を見つけて、app.tsそれらもすべてコンパイルします。正しい順序で処理した後、すべての JavaScript を に保存しますfinal.js。この JavaScript ファイルが空の場合、通常はコンパイラ エラーを示しています。

パラメータを使用して、--out指定した TypeScript ファイルだけの JavaScript ファイルを生成することはできません (そのファイルに依存関係がない場合を除きます)。

于 2013-01-26T14:14:04.330 に答える