2017-03-08 35 views
0

我使用typescript將我的應用程序捆綁到單個.js文件中。據我瞭解,自TS 1.8(我使用2.1)以來這是可能的。這裏是我的.tsconfigTypescript - 將單個輸出中的所有源文件與來自node_modules的所需外部模塊捆綁在一起

{ 
    "compileOnSave": true, 
    "compilerOptions": { 
    "experimentalDecorators": true, 
    "alwaysStrict": true, 
    "jsx": "react", 
    "noEmitOnError": true, 
    "outFile": "dist/bundle.js",   
    "moduleResolution": "node", 
    "preserveConstEnums": true, 
    "removeComments": true, 
    "sourceMap": true, 
    "target": "es5", 
    "module": "system" 
    }, 
    "exclude": [ 
    "node_modules", 
    "wwwroot" 
    ] 
} 

這確實創造了bundle.js文件,但來自node_modules引用的模塊沒有在這個包。是否有可能以某種方式在模塊中添加模塊?

我知道,這可以使用的WebPack或類似的工具來完成,但我的問題是,是否有可能做到這一點只用打字稿

回答

1

簡短的回答是否定的。

長的答案是,你可以在一些情況下做到這一點,但可能不應該嘗試。 TSC作爲TypeScript-to-JavaScript編譯器工作,轉換文件並檢查其有效性。創建適當的bundle,特別是來自不同版本的JavaScript依賴關係,具有完全不同的需求和期望,不屬於轉換器範圍。

some cases你可以有一個純粹的基於TSC的捆綁工作流程,它甚至可能是有意義的。但那些必然意味着你正在處理一個純粹的TypeScript解決方案,而不是真正滿足你從一個真正的包中獲得的期望。

起初聽起來似乎是不必要的複雜,但Webpack是要走的路,即使是圖書館也是如此。

相關問題