Webpack v5.102.0 已发布,模块打包器
Webpack 是一个模块打包器,主要目的是在浏览器上打包 JavaScript 文件。Webpack v5.102.0 已发布,具体更新内容如下:
特性
- 为 dynamic imports 添加了 static analyze
- 新增了对
import file from "./file.ext" with { type: "bytes" }的支持,以将内容作为Uint8Array形式获取(查看示例) - 新增了对
import file from "./file.ext" with { type: "text" }支持,以将内容作为文本形式获取(查看示例) - 添加了
snapshot.contextModule用于配置上下文模块的快照选项 - 新增
extractSourceMap选项,实现通过注释加载 source maps 的功能,无需source-map-loader(查看示例) topLevelAwait实验功能现在稳定了(可以从webpack.config.js中删除experiments.topLevelAwait)- 实验性
layers现已稳定了(可以从webpack.config.js中删除experiments.layers) - 在规则选项中添加了 function matcher 支持
修复
- 修复多个连接模块引起的冲突
- 使用 ES 模块输出更新 HMR 期间忽略导入失败
- 保持渲染模块顺序一致
- 防止内联具有
this导出的模块 - 删除了 script tag 中未使用的
timeout属性 - 支持在 Web Worker 中工作的 UMD chunk 格式
- 改进了 CommonJs bundle to ES module library
- 构建依赖项时为
mjs文件启用es-lexer - 修复了 ES 模块对
__non_webpack_require__的支持 - 正确处理 CSS 的外部模块
- AssetsByChunkName 包含来自
chunk.auxiliaryFiles的资源 - 仅当输出为 ES 模块且目标是 node 时使用
createRequire - Typescript 类型
性能改进
- 避免额外调用快照
- 避免构建依赖项的额外工作
- 将导入属性移至自有依赖项
更新说明:https://github.com/webpack/webpack/releases/tag/v5.102.0