关于网友提出的“ (javascript)webpack如何分别打包第三方库和自己写的公用业务逻辑库”问题疑问,本网通过在网上对“ (javascript)webpack如何分别打包第三方库和自己写的公用业务逻辑库”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: (javascript)webpack如何分别打包第三方库和自己写的公用业务逻辑库
描述:背景
我的项目是一个多页应用,用webpack作为构建工具,目前是用CommonsChunkPlugin(minChunks: 5)把所有require5次以上的模块(这里面既包括第三方库,也包括我自己写的公用业务逻辑模块)都打包到一起,因此基本上每个页面只加载俩js,一个是前面提到的这个打包的js,另外一个就是仅在本页面使用到的entry.js。
以登录页作为例子,每个页面加载的js是这样的:
需求
现在我的需求是,把第三方库和我自己写的公用业务逻辑库分开来打包,这是基于下面的考虑:
尝试
我在网上没有搜到这样的例子,只搜得到仅把第三方库独立出来打包的例子(没有考虑到公用业务逻辑库的情况)。
我自己有尝试过用俩CommonsChunkPlugin:
commonsChunkPluginForVendor = new webpack.optimize.CommonsChunkPlugin({
name: 'vendor',
filename: '[name].bundle.js',
minChunks: Infinity,
});
commonsChunkPlugin = new webpack.optimize.CommonsChunkPlugin({
name: 'commons',
filename: '[name].bundle.js',
minChunks: 5,
});
这样打包出来的效果是,第三方库的确是独立出来了打包到了vendor.bundle.js
里,但是commons.bundle.js
里却只有webpack的一些执行代码,并没有把公用业务逻辑库抽取出来,而是分散到各个entry.js里。
请教怎么才能分别打包第三方库和自己写的公用业务逻辑库呢?