Webpack5学习笔记(六): Webpack5 新特性
Webpack版本:
webpack 5.24.4
webpack-cli 4.5.0
说明:来自尚硅谷webpack视频教程(非原创)
第7章: Webpack5 新特性
7.1 关于webpack4的一点补充
- 下载不同的webpack版本。比如下载webpack4可以使用:
npm i webpack@4 webpack-cli -D
- 使用当前本地的webpack构建代码,需要命令:
npx webpack
- 检查webpack版本:
npx webpack -v
7.2 关于webpack5的新功能总结
此版本重点关注以下内容:
- 通过持久缓存提高构建性能.
- 使用更好的算法和默认值来改善长期缓存.
- 通过更好的树摇和代码生成来改善捆绑包大小.
- 清除处于怪异状态的内部结构,同时在 v4 中实现功能而不引入任何重大更改.
- 通过引入重大更改来为将来的功能做准备,以使我们能够尽可能长时间地使用 v5.
7.3 自动删除 Node.js Polyfills
- 早期,webpack 的目标是允许在浏览器中运行大多数 node.js 模块,但是模块格局发生了变化,许多模块用途现在主要是为前端目的而编写的。webpack <= 4 附带了许多 node.js 核心模块的 polyfill,一旦模块使用任何核心模块(即 crypto 模块),这些模块就会自动应用。
- 尽管这使使用为 node.js 编写的模块变得容易,但它会将这些巨大的 polyfill 添加到包中。在许多情况下,这些 polyfill 是不必要的。
- webpack 5 会自动停止填充这些核心模块,并专注于与前端兼容的模块。
- 迁移:
- 尽可能尝试使用与前端兼容的模块。
- 可以为 node.js 核心模块手动添加一个 polyfill。错误消息将提示如何实现该目标。