那麼,現在我們一直在使用Browserify 2.x。我們正在經歷一些重構,所以我們想嘗試更新到最新的Browserify,以減少未來版本的飛躍。如何使用最新的Browserify(6.x.x)創建供應商捆綁包?
不幸的是,如何處理外部軟件包有所改變。在舊版本中,我們可以簡單地告訴Browserify哪些模塊不在捆綁中並需要從另一個模塊中獲取 - 基本上是described here。
從版本5.0.0發生Browserify內部的一些重大變化。我們以這個命令爲例。 debug
模塊是NPM模塊。
browserify -r debug -o vendor.js
在Browserify運行此命令@ 4,輸出文件應該是這樣的:
require=(function... {
"debug":[function(require,module,exports){
module.exports=require('2Bvkwp');
},{}],
"2Bvkwp":[function(require,module,exports){
// actual code from debug module
},{}]
});
現在用Browserify @ 5它看起來像這樣:
require=(function... {
1:[function(require,module,exports){
// actual code from debug module
},{}]
});
要完成等式,我有簡單的文件,其中包含require('debug')
,這與命令browserify -x debug -e index.js -o main.js
捆綁在一起。對於debug
模塊,內部依賴關係設置爲undefined
,這是正常的。
如果您想查看prelude.js文件,可以使用以前定義的全局require
(存儲在previousRequire
變量中)的邏輯來查找未在當前包內定義的模塊。但由於vendor.js
沒有公開任何類似debug
模塊,因此無法成功。
所有我已經能夠找到的是該線路的changelog:
散列走了這麼暴露:true或明確的暴露ID需要做多出口束
我我無法找到什麼呢,實際上是指:(
是的,看起來他們終於修好了,感謝您的支持。 – FredyC 2014-10-28 06:49:05