2014-02-16 44 views
11

我的項目中有很多.ts文件。 WebStorm將每個.ts文件構建爲一個js文件。但我不想那樣。TypeScript將所有ts文件作爲WebStorm中的單個JavaScript文件編譯7

我有一個app.ts文件,所有其他.ts文件將構建在該app.ts文件中。我如何在WebStorm 7中做到這一點?

在CLI模式下有一個解決方案,但我怎麼能在WebStorm中實現它?

tsc --out app.js main.ts app.ts a.ts b.ts 

還是有更好的方法來做到這一點?

ANSWER

就在編輯守望者加入這一行的參數部分

--sourcemap $FileName$ --out your-main.js 

回答

4

您可以在Typescript File觀察器參數中指定--out選項,並且如果'只跟蹤根文件'選項打開,所有ts文件將被合併到主js文件中(直接或通過引用導入它們鏈)修改其中任何人

+0

'只跟蹤根文件'被選中,但哪個文件是主js文件?我可以在設置中選擇主文件嗎?你能解釋一下更具體的信息嗎,謝謝。 – mrchad

+0

目標文件名稱(我稱之爲'main js')是您使用--out選項(在您的示例中爲app.js)的名稱。當你修改你的任何一個ts文件時,編譯器會遵循引用(/// )鏈,並將所有引用的文件連接成一個具有指定名稱的JavaScript文件(app。 js) – lena

+0

謝謝,這對我來說很有用。我會用答案編輯我的問題。 – mrchad

1

對於那些沒有單一文件鏈接到所有其他的人,他們不想手動維護「references.ts」或使用basarat的grunt-ts,這是我的設置:

其基本思想是將所有* .ts文件列入文本文件,然後將該文件作爲tsc編譯器的patameter。所以我創建了我自己的文件觀察器並禁用了TypeScript文件的默認文件。我的文件觀察者的程序與內容如下一個bat文件:

dir /s /b /o:gn scripts\*.ts > ts_sources.txt 
tsc %* 

如果你在Mac或Linux,你可以很容易地將其轉化成一個bash腳本。

在觀察者的設置屏幕指向您的批處理文件(bash腳本):

$ProjectFileDir$\compile.bat 

,併爲你的論點,你可以使用下列內容:

@$ProjectFileDir$\ts_sources.txt --out $ProjectFileDir$\app_all.js --sourcemap 

我想有很多方法來做到這一點...

相關問題