- 引入 webpack-merge 合并公共基础配置,区分 开发环境 和 正式环境。
- 引入 HtmlWebpackPlugin 实现多页面配置。
- 引入 Ejs 模板实现组件化模块化功能(共用多页面的头部和底部)。
- 引入 ExtractTextPlugin 提取分离公共CSS文件。
- 引入 Babel transform-decorators-legacy 最新编译,可编译ES7,ES8(装饰圈@等)。
- 配置 less-loader 预处理器。
- 配置 postcss 调高CSS代码在不同浏览器的兼容性。
- 配置 TypeScript。
- 开发环境 使用 devServer , 保存自动刷新页面。
- 正式环境 基于Webpack4的 TerserPlugin 更好的压缩代码。
- 引入 HappyPack 做多线程打包。
- 引入 HardSourceWebpackPlugin 做硬盘缓存。
- 引入 SpeedMeasurePlugin 分析打包速度。
- 引入 BundleAnalyzerPlugin 分析打包完成包的大小。
- 引入 WebpackBuildNotifierPlugin 构建完成会自动提醒。
git clone https://github.com/czero1995/webapck-4x_bace_config.git
cd webapck-4x_bace_config
npm install
开发环境: npm run dev
生产环境: npm run build
分析环境: npm run analyz