2

typescript プロジェクトが正常に動作しています。2 番目のプロジェクトを作成し、以前のコードの一部をファイル システム経由でコピーしました。私の .js が私の .ts と同期していないという事実を除いて、すべてが正常に動作します。問題を解決する方法: 両方のファイルを削除し、Visual Studio インターフェイスを使用して ts ファイルをドラッグしてもう一度コピーします (.js が自動的に含まれます)。と.jsはお互いを知っていますか?. ASP.NET ではコード ビハインドの概念がありますが、ここではこれがどのように行われたかわかりません。Visual Studio は隠しファイルに関係を保持していますか?

4

1 に答える 1

5

75ページのtypescript言語仕様(9.1章):

デフォルトでは、コンパイル内の実装ソースファイルごとにJavaScript出力ファイルが生成されますが、宣言ソースファイルからの出力は生成されません。

名前以外に、tsファイルとjsファイルの間に実際の関連付けはありません。tsファイルはjsファイルにコンパイルされ、実行時にjsファイルがロードされます。jsファイルの実際の名前はモジュール名とは無関係であり、それに応じてスクリプトをロードする必要があることに注意してください(たとえば<script>、htmlページで使用する)。

あなたの場合は、tsファイルへの参照をコピーして追加するだけで問題ありません。参照を追加したら、ビルドアクションを「TypeScriptCompile」に変更して、タイプスクリプトコンパイラに渡されるようにしてください。ソリューションエクスプローラーでファイルを選択し、F4キーを押してプロパティウィンドウを表示し、ビルドアクションを変更します。

更新:コメントに記載されているように、ファイルを「ネスト」するには、プロジェクトをアンロードして、js要素に子要素を追加します(変換など)。

<Content Include="some.js" />
<TypeScriptCompile Include="some.ts" />

<Content Include="some.js">
    <DependentUpon>some.ts</DependentUpon>
</Content>
<TypeScriptCompile Include="some.ts" />
于 2012-10-25T05:59:34.037 に答える