博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
webpack.optimize.CommonsChunkPlugin插件的使用
阅读量:5144 次
发布时间:2019-06-13

本文共 2206 字,大约阅读时间需要 7 分钟。

方式一,传入字符串参数 

new webpack.optimize.CommonsChunkPlugin(‘common.js’), // 默认会把所有入口节点的公共代码提取出来,生成一个common.js

1 var HtmlWebpackPlugin = require('html-webpack-plugin'); 2 var webpack = require('webpack'); 3  4 var extractTextPlugin = require('extract-text-webpack-plugin'); 5  6 module.exports = { 7     // entry是入口文件,可以多个,代表要编译那些js 8     //entry:['./src/main.js','./src/login.js','./src/reg.js'], 9 10     entry:11     {12         'main':'./src/main.js',13         'user':['./src/login.js','./src/reg.js'],14         'index':['./src/index.js']15     },16 17     externals:{18         'jquery':'jQuery'19     },20 21     module:{22         loaders:[23             // {test:/\.css$/,loader:'style-loader!css-loader'},24             {test:/\.css$/,loader:extractTextPlugin.extract('style','css')}25         ],26     },27 28     output:{29         path: __dirname+'/build/js', // 输出到那个目录下(__dirname当前项目目录)30         filename:'[name].js' //最终打包生产的文件名31     },32 33     plugins:[34         new HtmlWebpackPlugin({35             filename: __dirname+'/build/html/login-build.html',36             template:__dirname+'/src/tpl/login.html',37             inject:'body',38             hash:true,39             chunks:['main','user','common.js']   // 这个模板对应上面那个节点40         }),41 42         new HtmlWebpackPlugin({43             filename: __dirname+'/build/html/index-build.html',44             template:__dirname+'/src/tpl/index.html',45             inject:'body',46             hash:true,47             chunks:['index','common.js']   // 这个模板对应上面那个节点48         }),49 50         // css抽取51         new extractTextPlugin("[name].css"),52 53         // 提供公共代码54         new webpack.optimize.CommonsChunkPlugin('common.js'), // 默认会把所有入口节点的公共代码提取出来,生成一个common.js55     ]56 }
View Code

 方式二,有选择的提取公共代码

// 提供公共代码// 默认会把所有入口节点的公共代码提取出来,生成一个common.js// 只提取main节点和index节点new webpack.optimize.CommonsChunkPlugin('common.js',['main','index']),

方式三,有选择性的提取(对象方式传参) (推荐)

 

new webpack.optimize.CommonsChunkPlugin({            name:'common', // 注意不要.js后缀            chunks:['main','user','index']        }),

通过CommonsChunkPlugin,我们把公共代码专门抽取到一个common.js,这样业务代码只在index.js,main.js,user.js

转载于:https://www.cnblogs.com/toward-the-sun/p/6131943.html

你可能感兴趣的文章
SAP库龄表
查看>>
史上最全设计模式导学目录(完整版)
查看>>
方正璞华培训讲师
查看>>
数字产品经理的培养
查看>>
[bzoj4826][Hnoi2017]影魔
查看>>
iOS 取绝对值函数
查看>>
【转】Pro Android学习笔记(四六):Dialog(3):对话框弹对话框
查看>>
蓝桥杯练习 用筛法求之N内的素数 线性素数筛
查看>>
VS无法加载Web项目
查看>>
我的第一个python爬虫:爬取豆瓣top250前100部电影
查看>>
spring-aop使用记录
查看>>
《软件测试(原书第2版)》学习笔记-01
查看>>
CSU 1115 最短的名字
查看>>
车大棒浅谈jQuery源码(一)
查看>>
spring mvc注入配置文件里的属性
查看>>
垃圾收集算法学习
查看>>
从托管映像创建 VM
查看>>
SpringBoot更改HttpMessageConverters使用FastJson出现乱码问题
查看>>
【week12】psp
查看>>
C# 中如何判断某个字符串是否为空的方法 分享了三个方法来判断字
查看>>