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'
});
相关推荐
Z_Wonderful1 天前
微前端:Webpack 配置 vs Vite 配置 超清晰对比
前端·webpack·node.js
invicinble1 天前
前端技术栈--webpack
前端·webpack·node.js
江上清风山间明月3 天前
Vite现代化的前端构建工具详解
前端·webpack·nodejs·vite
恋恋风尘hhh4 天前
Web 前端安全机制分析:以 Webpack 打包混淆为例
前端·安全·webpack
guhy fighting7 天前
使用vue-virtual-scroller导致打包报错
前端·javascript·vue.js·webpack
小李子呢02117 天前
前端八股---脚手架工具Vue CLI(Webpack) vs Vite
前端·vue.js·webpack
时寒的笔记8 天前
js逆向_webpack讲解加载器&酷某音乐案例
开发语言·javascript·webpack
花归去8 天前
在 Vue 项目中配置 postcss-preset-env
vue.js·webpack·postcss
流云枫9 天前
一文学会webpack:妈妈再也不用担心我不会工程化了
webpack
whuhewei13 天前
Webpack5构建效率优化
前端·webpack