建议结合webpack的英文版一起看,英文版的才是最新的,中文版方便理解
cnpm i webpack-cli -g
//  webpack --mode development/production(默认) 入口文件 -o 输出文件
webpack --mode development index.js -o new_index.js
默认入口是
./src文件夹下的index.js文件,输出默认的是./dist/main.js
webpack --mode development
const path = require(‘path‘);
module.exports = {
  entry: {
    home_11:‘./src/index.js‘,
    detail_22:‘./src/detail.js‘,
    person_33:‘./src/person.js‘,
  },
  output: {
    path: path.resolve(__dirname, ‘dist‘),
    filename: ‘[name].new.js‘ 
  },
  mode:‘development‘ //这样就无须写在命令行里了
};
// 直接在命令行输入
webpack

url-loader
//第一步.在当前的根目录下,生成package.json,方便记录都安装了啥
npm init -y 
// 第二步. 安装 url-loader
npm install --save-dev url-loader
// 第三步.终端执行‘webpack’,报错,说缺少 file-loader ,继续安装
cnpm install --save-dev file-loader
// 最后执行 webpack

babel-loader
npm install -D babel-loader @babel/core @babel/preset-env webpack
module: {
  rules: [
    {
      test: /\.m?js$/,
      exclude: /(node_modules|bower_components)/,
      use: {
        loader: ‘babel-loader‘,
        options: {
          presets: [‘@babel/preset-env‘],
          plugins: [‘@babel/plugin-proposal-object-rest-spread‘] //视具体情况最加对应的插件
        }
      }
    }
  ]
}
less-loader
npm install less less-loader style-loader css-loader --save-dev
  module: {
    rules: [
      {
        test: /\.less$/,
        use: [
            {
                loader: "style-loader" 
            }, {
                loader: "css-loader" 
            }, {
                loader: "less-loader" 
            }
          ]
      }
    ]
  }

将css相关 的单独抽为一个css文件
npm install --save-dev mini-css-extract-plugin
  const MiniCssExtractPlugin = require(‘mini-css-extract-plugin‘);
  
  module.exports ={
      ...
       plugins: [
        new MiniCssExtractPlugin({
          // Options similar to the same options in webpackOptions.output
          // both options are optional
          filename: ‘[name].css‘,
          chunkFilename: ‘[id].css‘,
        }),
    
      ],
      module: {
        rules: [
          {
            test: /\.less$/,
            use: [
              {
                loader: MiniCssExtractPlugin.loader,
              },
              ‘css-loader‘,
              ‘less-loader‘]
          }
        ]
      },
  }
npm i -D webpack-cli后解决
  const webpack=require(‘webpack‘);
  
  module.exports ={
      ...
      plugins: [
        new webpack.DefinePlugin({
          THEME_COLOR:"#000000",
          RQUEST_URL:"https://...."
        })
      ],
      module: {
        ....
      }
  }
具体看webpack官网的HtmlWebpackPlugin的 github地址
npm install --save-dev html-webpack-plugin
  var HtmlWebpackPlugin = require(‘html-webpack-plugin‘);
  module.exports ={
        ...
        plugins: [
          new HtmlWebpackPlugin({
            title: ‘测试——‘,
            filename: ‘real.html‘,
            template:‘./src/detail.html‘
          })
        ],
        module: {
          ....
        }
  }

第一步
cnpm i webpack-dev-server -D
第二步,修改webpack.config.js
  module.exports ={
      ...
      devServer: {
        contentBase: path.join(__dirname, ‘dist‘),//这里的dist得跟输出的目录一致
        compress: true,
        port: 9000
      },
  }
第三步,修改
package.json文件的scripts字段。(因为如果直接在命令行输入webpack-dev-server,会找不到。如果从package.json 启动,就是找当前目录的node_modules里面找)
"scripts": {
  "start": "webpack-dev-server"
},
第四步,在终端输入
npm run start
原文:https://www.cnblogs.com/ljmin9527/p/13785799.html