2016-03-23 5 views
2

Typescriptプロジェクトに.d.ts定義が含まれているのはなぜ...生産性が悪いようですか?純粋なTypescriptプロジェクトに.d.ts定義が含まれているのはなぜですか?

ライブラリーが既にTypeScriptで開発されている場合(Angular2など)、TS transpilerはインテリジェンスのためにソース.tsファイルを使用できますが、なぜTSプロジェクトの.d.tsファイルが表示され続けるのですか?

tsd実行可能ファイルから.d.ts定義を簡単に生成できますが、ロジックが表示されません。

に関して、

ショーン

+2

tsソースプロジェクトのコンパイル(またはあなたが推奨する場合は変換)は次の出力を持ちます。1)単純なes5 jsファイルであるjsファイル(または複数)2)タイプを記述する.d.ts定義ファイル元のプロジェクトの制約(jsへの移行で失われた)。 2番目のファイルは、コンパイル済みの(js + .d.ts)プロジェクトを使用しているときに型チェックと自動補完に使用されます。 – GameAlchemist

答えて

4

それは分布にダウンしています。 npm/bowerを介してプロジェクトを参照すると、「メイン」ファイルが提供されます。このファイルは、JavaScriptであり、タイプスクリプトではありません。このように、それがすべき活字体プロジェクトのコンパイル出力のための最も理にかなって:

A)可能性タイプの注釈を記述する

B)A .d.tsファイル(種類のを縮小さtranspiledのJavaScriptファイルを、

javascriptプロジェクトの使用を妨げるか、またはnpmパッケージの別のタイトルスクリプトバージョンが必要になるため、typescriptで配布することはあまり意味がありません。

+0

私は今、Cヘッダーの例は実際にはかなり良いです、基本的にインターフェイスを公開するだけ...私も1つのTypeScriptソース、ヘッダーファイル(.d.ts)を表示したいと思うが、私はそれを推測するGithubはもう一度、良い答えです。 – born2net

関連する問題