2017-05-24 218 views
1

我想創建一個新的TypeScript項目。TypeScript項目 - SystemJS

我想它是那麼簡單,重量輕越好,沒有任何不必要的複雜的配置,同時滿足下列要求:

- 使用NPM

- 使用打字稿

- 使用import語句,例如

import { A, B } from 'module'; 

-bundle從node_modules是使用import語句導入/建立生產

-compile項目源到一個單一不過outFile並把它放在/建

-Load依賴於所有的依賴運行時根據使用進口報表進口

- 使用SystemJS,因爲我理解它正在成爲標準模塊加載器的過程中

到目前爲止,我創建了一個新項目:

- 二手NPM - 安裝了一個框架,它能夠通過Visual Studio代碼

爲打字稿

分型使用TSC(tsconfig.json)-Compiling - tsconfig.json 「模塊」: 「系統」(SystemJS)

-I可以寫import語句(因爲模塊設置爲 「系統」)

-tsc onfig.json「不過outFile」:「../build/app.js」 - 編譯項目源到一個單一不過outFile並放在‘建設’目錄

什麼我缺少的是:

-bundle所有依賴從使用import語句導入node_modules /根據進口在運行時建立生產

-Load依賴使用import語句

我沒有與設置和配置模塊的任何經歷使裝載機。

請問您能幫我指點正確的方向嗎?

搜索任何這些主題都會產生結果和我可以使用的npm模塊,但事情可能會變得太複雜太快,需要花費太多時間來了解我正在做什麼以及需要什麼這樣做,所以任何人知道如何最好地接近這個建議將不勝感激。

回答

0

我認爲你的問題都可以通過使用jspm來解決。它使用systemjs作爲模塊加載程序,並且會帶走配置和維護systemjs配置所需的所有程序包路徑,擴展等的負擔。

具體回答你的問題:

  1. JSPM將讓你的所有客戶端依賴於一個單獨的文件夾(jspm_packages),因此爲了準備你的依賴於部署所有你需要做的就是這個文件夾複製到目標位置。
  2. JSPM會產生含有使用(包括嵌套)所有的配置都爲你config.js包

開始了與這個user guide - 這是很清楚,可以讓你在任何時間配置JSPM。

+0

我只是試過jspm,它看起來有很多要學習它和許多問題來解決(打字稿不承認jspm默認進口路徑,生產捆綁打字稿有問題...), Doesn 'npm有一些命令將所有依賴關係捆綁成一個bundle.js或類似的東西? –

+0

爲了保持打字稿/ ide的快樂 - 只需在package.json中使用普通的依賴關係即可。沒有人禁止你擁有兩者。 Jspm將負責模塊加載客戶端。從來沒有部署問題。我不認爲在npm中有一個命令來捆綁包 - 它不是一個webpack的後遺症。 – Amid

+0

好吧,我做到了,ts現在能夠找到它。請問jspm加載和捆綁未通過jspm安裝的npm依賴關係嗎?部署 - 'jspm bundle'需要一個.js文件,我想我應該把它指向一個由.ts編譯的文件。即使我這樣做,我有錯誤,但讓我們擱置一會兒。我想我也需要從本地服務器運行這個以避免交叉錯誤。是否有可能使用import語句而不依賴於像systemjs這樣的模塊加載器?我甚至不介意手動加載庫,坦率地說,我只是喜歡語法。 –

相關問題