2012-10-25 31 views
2

我有一個打字稿項目工作正常。我創建了第二個項目,並通過文件系統複製了我之前的一些代碼。除了我的.js現在不與我的.ts同步之外,一切正常。 我現在該如何解決這個問題:刪除這兩個文件並使用Visual Studio界面拖動ts文件(將自動攜帶.js)再次複製 無論如何,我很好奇,現在我想知道, .ts和.js彼此瞭解? 在ASP.NET中,你有代碼的概念,但在這裏我看不到這是如何完成的。 是Visual Studio保持隱藏文件中的關係?打字稿(.ts)及其javascript(.js)之間的關係如何維護?

回答

4

在75頁的打字稿語言規範(第9.1):

默認情況下,在一個 編譯每個實現源文件生成一個JavaScript輸出文件,而是從報關源生成任何輸出文件。

除名稱外,ts和js文件之間沒有真正的關聯。一個ts文件被編譯成一個js文件,並在運行時加載js文件。請注意,js文件的實際命名與模塊名稱無關,您自己負責相應地加載腳本(例如,在您的html頁面中使用<script>)。

在你的情況下,只需複製並添加對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" /> 
+0

我認爲問題是關於如何在Visual Studio中的文件沒有嵌套副本後,他們似乎彼此相鄰,而不是在解決方案資源管理器中被關聯。 – Fenton

+0

+1進行更新。 – Fenton