Webpack 快速入门指南(三)

生产环境构建

在本指南中,我们将深入一些最佳实践,并且使用工具,将网站或应用程序构建到生产环境中。

配置

开发环境(development)和生产环境(production)的构建目标差异很大。

在开发环境中,我们需要具有强大的、实时加载或模块热替换能力的 source map 和 localhost server。

在生产环境中,我们的目标则转向于关注更小的 bundle,更轻量的 source map,以及更优化的资源,以改善加载时间。由于要遵循逻辑分离,我们通常建议为每个环境编写彼此独立的 webpack 配置。

在编写 webpack 配置文件时,为了遵循不重复原则(Don't repeat yourself - DRY),需要保留一个通用(common)配置。有了通用配置,我们就不必在特定环境的配置文件中重复相同的配置代码。

为了将这些配置合并在一起,我们使用 webpack-merge 的工具。

安装 webpack-merge:

npm install --save-dev webpack-merge

然后,将项目根目录下的 webpack.config.js(webpack 默认配置文件)删除,并新建三个配置文件:

  • webpack.common.js(通用的 webpack 配置)
  • webpack.dev.js(开发环境的webpack 配置)
  • webpack.prod.js(生产环境的webpack 配置)

它们的具体内容如下:

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(['dist']),
        new HtmlWebpackPlugin({
            title: 'Production'
        })
    ],
    output: {
        filename: '[name].bundle.js',
        path: path.resolve(__dirname, 'dist')
    }
};

webpack.dev.js

const merge = require('webpack-merge');
const common = require('./webpack.common.js');
module.exports = merge(common, {
    devtool: 'inline-source-map',
    
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值