2015-05-12 22 views
2

我一直在努力嘗試從Twitter Bootstrap下載較少的文件。根據jspm文檔,他們將下載版本的zip文件,而不是存儲庫中的源代碼。在Twitter的引導是zip文件,不具有較少的文件,所以我明白爲什麼我沒有得到他們,當我做這樣的事情:jspm如何確定從Github下載什麼

jspm install github:twbs/[email protected] 

然而,爲了避免這個限制,我分叉Twitter的引導以避免這些自定義發佈文件。當我轉到我的fork中的發行版部分並下載文件時,它看起來不錯,但是當我嘗試安裝它時,我得到的文件與以前相同。

我做了一個乾淨的緩存,創建了一個不同的分支,對基於v3.3.4的新分支等進行了更改等。我總是獲得v3.3.4的相同文件集,而沒有更少的文件。

有誰知道jspm如何確定要下載什麼,以及爲什麼它可能會在twbs/bootstrap下載發行版文件而不是我的fork中的版本文件?

回答

6

這是有點晚,但在另一個話題搜索時偶然發現。所以基本上是這筆交易。

jspm利用package.json文件。你會注意到一個名爲「文件」的條目。當jspm命中github/npm回購時,它會查看此JSON密鑰並確定要提取的內容。

這很有用,因爲通常情況下你可能有一個模塊需要其他文件來開發,但你不需要或需要這些文件分發模塊時。

正如你在下面看到的,這是bootstrap package.json中的「files」配置。它確實有一個關鍵文件較少。

"files": [ 
    "dist", 
    "fonts", 
    "grunt", 
    "js/*.js", 
    "less/**/*.less", 
    "Gruntfile.js", 
    "LICENSE" 
], 

這裏的問題,如果你想調用它,這是在如何jspm處理這個流行的回購。它在內部映射它映射到發行版的一些版本,在這種情況下,無引導。你可以看到所有的引導JSPM註冊表如下條目:

"bootstrap": "github:twbs/bootstrap", 
"bootstrap-less": "github:distros/bootstrap-less", 
"bootstrap-material": "github:fezVrasta/bootstrap-material-design", 
"bootstrap-sass": "github:twbs/bootstrap-sass", 
"bootstrap-slider": "github:seiyria/bootstrap-slider", 
"bootstrap-wizard": "github:gwrey/bootstrap-wizard" 

所以,如果你想減檔你僅需要運行:

$ jspm install bootstrap-less 

任何人都可以創建一個拉請求,並添加到JSPM註冊表。您可以在此鏈接找到註冊表:

https://github.com/jspm/registry/blob/master/registry.json

。希望清除它適合你。

+0

bootstrap 4.0 alpha的sass文件在bootstrap-sass repo中不可用。我結束了現在使用npm,因爲我找不到jspm解決方案''git + https://github.com/twbs/bootstrap.git#v4-dev「' –