如何捆绑commonjs模块,除非指定需要
How to bundle commonjs modules except specified requires
如何通过webpack或gulp+browserfy进行捆绑,除非指定需要,例如忽略var module = require(pathToModule);
,这样得到的捆绑包也包含var module = require(pathToModule);
这可以通过webpack externals选项来完成
如果需要,也可以将
externals
选项用于应用程序以将现有的API导入到捆绑包中。也就是说,你想使用jquery来自CDN(单独的<script
>标签),并且仍然想要require("jquery")
在你的包裹里。只需将其指定为external: { externals: { jquery: "jQuery" } }
即可。
webpack.config
{
externals: {
// require("jquery") is external and available
// on the global var jQuery
"jquery": "jQuery"
}
}
如果你想让webpack忽略外部模块并在输出中保留require语句,你可以使用一个空加载器
loaders: [{
test: /@amperka'/.*/,
loader: 'null'
}
使用Webpack中的externals
设置来指定将在捆绑包之外加载所需的模块。
{
...
externals: {
// require("jquery") is external and available on the global var jQuery
"jquery": "jQuery"
}
...
}
因此,从捆绑包中调用require("jquery")
将引用全局变量jQuery
——这显然要求您在捆绑包之前加载jQuery,例如
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.js"></script>
<script src="bundle.js"></script>
相关文章:
- 将依赖外部库的UMD模块与browserfy捆绑在一起
- 找不到模块捆绑包
- 如何捆绑循环相关模块
- 如何捆绑commonjs模块,除非指定需要
- “createImageData()”和“new ImageData(()”有何不同
- 如何在Yii2资产捆绑包中使用JSX文件
- 间歇性浏览捆绑包故障(可能是brfs)
- "检测到可能的EventEmitter内存泄漏”;使用Gulp+Watchify+Factor捆绑包
- 何时使用Requirejs以及何时使用捆绑的javascript
- 避免将lib依赖项与webpack+handlebas加载程序捆绑在一起
- Angular 2捆绑和最小化
- AMD应用程序在浏览器中的加载速度是否快于CommonJS应用程序
- Gulp,浏览使用react作为CommonJS不起作用.React未定义
- 命令在没有watchify的情况下使用brfs进行观看和捆绑
- 对CommonJS配置文件使用全局变量
- 如何在JSFiddle上使用CommonJS模块
- 将所有angular2捆绑包包含在index.html中会使导入从内存获取数据,而不是再次从服务器请求数据
- 在与WebPack捆绑的Visual Studio中调试JavaScript代码
- 如何将 CommonJS 模块捆绑到单个 UMD 库文件中
- 如何将同构的 commonJS 代码与 webpack 捆绑在一起