Webpack学习笔记(六):生产环境

目的

生产环境和开发环境不同,开发环境需要强大的source Maps 排查问题,需要HMR。但生产环境不需要这些,生产环境需要的是压缩bundle,资源优化,轻量甚至不需要source Maps。所以需要针对这两种环境进行区分配置

Merge 工具

生产环境和开发环境虽然有些不同,但还有很多配置都是相同的。为了防止重复配置,webpack可以保留一份common配置,针对不同环境进行个性化配置,最后将个性化配置和common配置组合起来。这个组合就使用的是merge

安装依赖

npm install --save-dev webpack-merge

新建webpack.common.js

const path = require('path');
const { CleanWebpackPlugin } = require('clean-webpack-plugin');
const HtmlWebpackPlugin = require('html-webpack-plugin');

 module.exports = {
   entry: {
     app: './src/index.js'
   },
   plugins: [
     new CleanWebpackPlugin(),
     new HtmlWebpackPlugin({
       title: 'Production'
     })
   ],
   output: {
     filename: '[name].bundle.js',
     path: path.resolve(__dirname, 'dist')
   }
 };

新建webpack.prod.js

 const merge = require('webpack-merge');
 const common = require('./webpack.common.js');

 module.exports = merge(common, {
   mode: 'production',
 });

生产环境优化

压缩

设置 production mode 配置后,webpack v4+ 会使用TerserPlugin插件默认压缩代码。

源码映射

webpack鼓励在生产环境使用source Maps,这个可以根据实际情况进行选择,也可以直接关闭。

参考链接

  1. webpack生产环境环境
  2. 代码地址
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值