webpack4 - 配置文件分离(详细教程)

webpack根据开发和生成环境一般可以将配置文件拆分,拆分dev和prod两种环境

bas 复制代码
|- package.json
  |- /build
    |- webpack.base.js
    |- webpack.dev.js
    |- webpack.prod.js

在scripts里修改相应的命令

javascript 复制代码
"dev": "webpack-dev-server --config build/webpack.dev.js",
"build": "webpack --config build/webpack.prod.js"

使用webpack-merge,用以合并通用配置文件与开发环境配置文件

javascript 复制代码
// webpack.dev.js
const path = require('path');
const webpack = require('webpack');
const merge = require('webpack-merge');
const baseWebpackConfig = require('./webpack.base');

module.exports = merge(baseWebpackConfig, {
  mode: 'development',
  devServer: {
    host: '127.0.0.1',
    port: 80,
    contentBase: path.join(__dirname, 'dist'),
    open: false,
    hot: false,
    disableHostCheck: true,
    proxy: {},
    before () {}
  },
  plugins: [
    // 启用 HMR
    new webpack.HotModuleReplacementPlugin({})
  ]
});
javascript 复制代码
// webpack.prod.js
const baseWebpackConfig = require('./webpack.base');
module.exports = merge(baseWebpackConfig, {
  mode: 'production'
});
相关推荐
橙露8 小时前
Webpack/Vite 打包优化:打包体积减半、速度翻倍
前端·webpack·node.js
炎爆的土豆翔2 天前
bitwise_not`性能测试:手写普通循环、AVX2 与 OpenCV 内置实现对比
人工智能·opencv·webpack
胡西风_foxww3 天前
nextjs部署更新,Turbopack 和 Webpack 缓存冲突问题解决
缓存·webpack·react·nextjs·turbopack
Doris8933 天前
【Node.js 】Node.js 与 Webpack 模块化工程化入门指南
前端·webpack·node.js
JohnsonXin3 天前
一次线上白屏排查:静态 import 是如何悄悄破坏 Webpack 共享 Chunk 的
前端·webpack·node.js
2401_844221323 天前
在Webpack中打包编译和优化CSS及LESS文件的全面指南
css·webpack·less
Kinghiee5 天前
使用webpack构建vue3 ssr
前端·webpack·node.js·vue3ssr
北寻北爱6 天前
面试题-git+npm
vue.js·git·webpack·echarts