2016-04-14 7 views
1

私はチュートリアルを踏んで、TypescriptがAngular 2で動作するようにしました。問題は、サブディレクトリをコンパイルしてサブディレクトリを保存しているように見えないことです。Typescriptはビルド時にサブディレクトリを保持します

マイtsconfig.json

{ 
    "compilerOptions": { 
     "target": "ES5", 
     "module": "commonjs", 
     "outDir": "build", 
     "sourceMap": true, 
     "sourceRoot": "src", 

     "experimentalDecorators": true, 
     "noEmitOnError": true, 
     "noImplicitAny": true, 
     "removeComments": false 

    }, 
    "exclude": [ 
     "build", 
     "client", 
     "GulpTasks", 
     "node_modules", 
     "typings" 
    ] 
} 

今私のソースコードは、プロジェクトのための異なるモジュールとクライアント/サーバーのフォルダを持っています。

+build 
+node_modules 
+src 
---+client 
     ---+dir1 
     ---+file1.ts 
     ---+dir2 
---+server 
    ---+file1.ts 
+typings 

私がコンパイルしたときのディレクトリ構造を維持する必要がありますが、buildフォルダに移動したときにサブディレクトリ(SRC /サーバー)で見つかったファイルは、サーバーのサブディレクトリのフォルダに保存されません。 build/server/file1.jsはありませんが、build/file1.jsだけです。

JSファイルを書き込むときに、サブディレクトリを使ってファイルを移動するにはどうすればよいですか? src/client/dir1には、server/dir1ファイルと同じ名前のファイルがいくつかあり、もう一方は上書きすることはできません。

答えて

1

希望の効果を得るには、「rootDir」を設定し、少なくともtypescript 1.7を使用する必要があります。 link

+0

ありがとう:

{ "compilerOptions": { "target": "ES5", "module": "commonjs", "outDir": "build", "sourceMap": true, "rootDir": "src", "experimentalDecorators": true, "noEmitOnError": true, "noImplicitAny": true, "removeComments": false }, "exclude": [ "build", "client", "GulpTasks", "node_modules", "typings" ] } 

はgithubのに次の問題を参照してください。 sourceRootをrootDirに変更し、問題を解決しました。 –

関連する問題