如何使用browserify“删除”/“更改”一些需要(…)调用?
我有应用程序写在Node.js需要一些NPM模块(反应,反应路由器等)。 当我运行browserify,然后所有的npm模块被“注入”到bundle.js文件。 我想要的是为bower提供分发,不包括bundle.js文件中的反应和反应路由器依赖项,因为它们可以在bower.json中作为依赖项引用。
app.js:
var React = require('react') React.render(...)
在bundle.js中,与app.js一起被注入
我需要bundle.js不会包含反应,并会假设它在全局(窗口)范围内可用。
bundle.js:
React.render(...)
或者像这样的东西:
var require = function(name){ return window[name] } var React = require('react') React.render(...)
所以基本上我想告诉browserify,有些模块可以在window
范围内find,而不必注入到bundle.js中。
使用-x [Module Name]
从软件包中排除节点模块。
browserify -d -x react -x react-router app.js > bundle.js