4 个版本 (2 个破坏性更新)

0.2.2 2022年7月13日
0.2.1 2022年7月13日
0.2.0 2022年7月13日
0.1.0 2022年6月23日
0.0.0 2022年6月23日

#2 in #webpack


用于 webpack-q-cli

Apache-2.0

710KB
3K SLoC

Webpack 统计信息

Webpack 编译统计工具。

命令行界面

列出所有可用的入口点

> webpack-q stats.json list-entrypoints
entry-1:
  chunks:
  511
  603
  411
  
entry-2:
  chunks:
  553
  511
  603

描述单个入口点

显示单个入口点的块图

react-app-init:
Initial size (uncompressed): 25.209415 MiB
Chunk Imports (* denotes asynchronous chunk):
├── 677 (1.4475832 MiB) [667-03ce85aefb0fc941b387.js ]
    ├── 9710 (6.102539 MiB) [9710-c6ff2448139ca25af0fd.js,]
        ├── 9710 (6.102539 MiB) [9710-c6ff2448139ca25af0fd.js,]*- 8531 (1.9375 KiB) [8531-ddf76b7aa317e31c4ab8.js,]*- 8378 (21.391602 KiB) [8378-011d566da73967dfe9dc.js,]*- 8326 (868.4404 KiB) [8326-312307f999168a94f725.js,]*- 8334 (725.5176 KiB) [8334-416c2214d47f892bd20d.js,]*- 8182 (1.15102 MiB) [8182-b79790621933d372cb89.js,]
     

完全遍历图

在 html 中进行完整图遍历

# Output a graphviz dot file 
webpack-q stats.json traverse-entrypoint entry-1 -fdot

#output json
webpack-q stats.json traverse-entrypoint entry-1 -fjson

#output html viz with d3
webpack-q stats.json traverse-entrypoint entry-1 -fhtml

查找入口点到达块的方式

对于找出为什么您的公共块在初始页面加载时被导入非常有用。HTML 可视化显示块之间的力量,使其容易发现违规者

webpack-q stats.json paths-to-chunk my-entrypoint 5332

在这个例子中,中间的节点显然将多个块连接在一起。将其拆分可能可以提高加载性能。

路线图

更多 webpack 统计兼容性

仓库中已经包含可以编码的示例 stats.json 文件

  • V5
  • V4
  • V3
  • V2
  • V1

依赖项

~1.7–2.6MB
~51K SLoC