webpack 5 实战 - 01.起步

2,178 阅读2分钟

本系列文章主要 由浅入深 介绍如利用 webpack 5、babel、sass、postcss、webapck-chain 等模块、库实现生产项目构建的实战

🧳 目录

📋 结构

.
├── commitlint.config.js [代码提交规范]
├── package.json [包依赖]
├── postcss.config.js [postcss 独立配置]
├── public [静态文件]
├── src [开发代码]
├── template [html favicon 等模板文件]
└── webpack [配置文件]

💻 使用指令规划

  • Webpack 5 Practice 仓库
  • 获取 git clone https://github.com/efoxTeam/webpack-5-practice.git
  • 安装 yarn
  • 调试 yarn dev
  • 构建 yarn build
  • 正式环境调试 yarn start

代码实现

  "scripts": {
    "dev": "cross-env NODE_ENV=development DEPLOY_ENV=dev webpack serve --config ./webpack/config.js",
    "build": "cross-env NODE_ENV=production DEPLOY_ENV=prod webpack --config ./webpack/config.js",
    "start": "serve ./dist --cors -S -p 8000"
  },

其中 NODE_ENV 为构建环境 DEPLOY_ENV 为部署环境,支撑.dotenv

🛠 功能

🤝 依赖

webpack

Babel

Loaders

Plugins

🍄 新特征

🎯 注意

webpack5 对一下内容的相关说明 持续整理中

  • terser-webpack-plugin 默认支持
  • pnp-webpack-plugin 暂不支持
  • url-loader & file-loader 用 asset 进行取代
  • optimization.minimizer 设置方式 [new 自定义插件(), '...']
  • webpack-dev-server@4.0 目前还在开发状态、稳定性有待提升、不支持 liveloadoverlay
  • eslint-webpack-plugin 取代 eslint-loader

👋 作者