本节内容来自以下链接的内容,并受 CC BY 4.0 许可证约束。
如果未特别说明,以下内容可以认为是基于原始内容修改和删除的结果。
生成打包信息,可用于分析模块依赖关系并优化编译速度。
@rspack/cli,rspack build --json stats.json。stats.toJson(options)、stats.toString(options)。boolean | string | Object{"preset":"errors-warnings","timings":true}| 预设 | 描述 |
|---|---|
'normal' (true) |
输出统计选项的默认值 |
'none' (false) |
不输出任何内容 |
'verbose' |
输出所有内容 |
'errors-only' |
仅输出与错误相关的的信息 |
'errors-warnings' |
仅输出与错误和警告相关的信息 |
'minimal' |
仅在出现错误或新的编译时输出 |
'detailed' |
输出所有内容,除了 chunkModules 和 chunkRootModules |
'summary' |
仅输出汇总信息 |
您可以指定要输出的打包信息,以下所有字段都是可选的。
booleanundefined当未定义选项时,stats 选项的回退值。它优先于本地的 Rspack 默认值。
启用 stats.all 将导致 Rust 和 JavaScript 之间大量的數據传输,这将显著增加统计信息生成的耗时。请谨慎使用。
boolean | stringundefined设置 预设,用于要显示的信息类型。它对 扩展统计行为 有用。
booleantrue是否显示资产信息。有关更多详细信息,请参见 资产对象。
string"id"根据给定字段对资产进行排序。所有 排序字段 都可以使用。在值中使用 ! 前缀以根据给定字段反转排序顺序。
number15应显示多少个资产项(组将被折叠以适应此空间)。
booleanfalse是否显示与其他资产相关的资产信息(例如,资产的 SourceMaps)。
Array<string | RegExp | (name: string) => boolean> | string | RegExp | (name: string) => boolean | falsefalse排除匹配的资产信息。这可以使用字符串、正则表达式或接收资产名称作为参数并返回布尔值的函数来完成。stats.excludeAssets 可以是上述任何一种的数组。
booleantrue是否显示有关缓存资产的信息。将 stats.cachedAssets 设置为 false 将告诉 stats 仅显示已发出的文件(不包括已构建的文件)。
boolean是否按资产与代码块的关系对资产进行分组。
boolean是否按资产状态(已发出、与发出进行比较或已缓存)对资产进行分组。
boolean是否按资产扩展名对资产进行分组。
boolean是否按资产信息(不可变、开发、热模块替换等)对资产进行分组。
boolean是否按资产路径对资产进行分组。
booleantrue是否显示有关代码块的信息,有关更多详细信息,请参见 代码块对象。
booleantrue是否显示有关构建模块的信息以获取有关代码块的信息。
number10应显示多少个代码块模块项(组将折叠以适应此空间)。
booleanfalse是否显示作为代码块其他模块的依赖项的代码块模块。
booleantrue是否显示有关代码块和代码块合并来源的信息。
booleanfalse是否显示代码块父级、子级和同级。
string"id"按给定字段对代码块进行排序。所有 排序字段 都允许使用。在值中使用 ! 前缀以按给定字段反转排序顺序。
booleanfalse是否显示模块和代码块的 ID。
booleantrue是否显示有关 namedChunkGroups 的信息,有关更多详细信息,请参见 代码块组对象。
booleantrue是否显示代码块组中的辅助资产。
booleantrue是否显示代码块组的子级(例如,预取的、预加载的代码块和资产)。
number5代码块组中应显示多少个资产。
boolean | 'auto'false是否显示入口点及其对应的捆绑包,有关更多详细信息,请参见 入口点对象。
当 stats.entrypoints 设置为 'auto' 时,Rspack 将自动决定是否在 stats 输出中显示入口点。
booleantrue是否显示有关构建模块的信息,有关更多详细信息,请参见 模块对象。
booleantrue是否显示依赖项和警告/错误的来源。
booleantrue是否添加有关模块内资产的信息。
number15应显示多少个模块项(组将折叠以适应此空间)。
string"id"按给定字段对模块进行排序。所有 排序字段 都允许使用。在值中使用 ! 前缀以按给定字段反转排序顺序。
booleantrue是否显示有关模块包含原因的信息。
number1000原因应显示多少个字符(组将折叠以适应此空间)。
booleanfalse是否显示模块的源代码。
booleanfalse是否显示每个模块到入口点的距离。
booleanfalse是否显示孤儿模块。
如果模块未包含在任何代码块中,则该模块为孤儿模块。
booleantrue是否显示有关运行时模块的信息。
运行时模块是 Rspack 的内置模块,用于提供各种运行时功能。
booleantrue是否显示有关缓存(未构建)模块的信息。
Array<string | RegExp | (name: string) => boolean> | string | RegExp | (name: string) => boolean | falsefalse排除匹配的模块信息。这可以使用字符串、正则表达式或接收模块名称作为参数并返回布尔值的函数来完成。stats.excludeAssets 可以是上述任何一种的数组。
booleantrue是否显示有关嵌套在其他模块中的模块的信息(例如,使用模块串联)。
number10应显示多少个嵌套模块项(组将折叠以适应此空间)。
boolean是否按模块属性(错误、警告、资产、可选、孤儿或依赖项)对模块进行分组。
boolean是否按模块缓存状态(缓存或构建并可缓存)对模块进行分组。
boolean是否按模块扩展名对模块进行分组。
boolean是否按模块路径对模块进行分组。
boolean是否按模块类型对模块进行分组。
boolean按原因的来源模块进行分组,以避免大量的原因。
booleanfalse是否显示模块的导出。
booleanfalse是否显示使用模块的哪些导出。
booleanfalse是否显示优化对模块跳出的原因。
booleantrue是否显示错误。
booleantrue是否显示错误计数。
booleanfalse是否显示错误的详细信息。默认值为 'auto',当只有 2 个或更少的错误时,将显示错误详细信息。
number5应显示多少行错误。
booleantrue是否显示错误的堆栈跟踪。
booleantrue是否显示警告。
booleantrue是否显示警告计数。
number5应显示多少行警告。
'info' | 'none' | 'error' | 'warn' | 'log' | 'verbose' | boolean是否添加日志输出
'none', false: 禁用日志记录'error': 仅错误'warn': 仅错误和警告'info': 错误、警告和信息消息'log', true: 错误、警告、信息消息、日志消息、组、清除。折叠的组以折叠状态显示。'verbose': 记录除调试和跟踪之外的所有内容。折叠的组以展开状态显示。Array<string | RegExp | function (name) => boolean>是否显示指定 日志记录器(如插件或加载器)的调试信息。当 stats.logging 设置为 false 时,stats.loggingDebug 选项将被忽略。
booleantrue是否在日志输出中显示错误、警告和跟踪的堆栈跟踪。
booleanfalse是否以不同的颜色输出。
在支持颜色输出的环境中执行 rspack build 时,默认值为 true。
booleantrue是否显示有关编译哈希的信息。
booleanfalse是否显示 --env 信息。
booleantrue是否显示构建日期和构建时间信息。
booleantrue是否添加关于所用 Rspack 版本的信息。
string是否显示基础目录,一个绝对路径,用于缩短请求信息。
booleantrue是否显示publicPath。
booleantrue是否显示output.path。
booleantrue是否显示output.path。
booleantrue当文件大小超过performance.maxAssetSize时,是否显示性能提示。
booleantrue是否显示计时信息。
对于assetsSort、chunksSort 和 modulesSort,您可以通过几个可能的字段对项目进行排序。
'id':项目的 id,项目可以是资产、模块或块。'name':导入时分配给项目的名称。'size':项目的字节大小。'chunks':项目源自哪些块(例如,如果一个块有多个子块:子块将根据其主块进行分组)。'errors':项目中的错误数量。'warnings':项目中的警告数量。'failed':项目是否编译失败。'cacheable':项目是否可缓存。'built':项目是否已构建。'prefetched':项目是否将被预取。'optional':项目是否可选。'identifier':项目的标识符。'index':项目的处理索引。'profile':项目的处理成本。'issuer':发行者的标识符。'issuerId':发行者的 id。'issuerName':发行者的名称。'issuerPath':完整的发行者路径。如果您想使用预设的输出行为,但想输出更多或更少的单个字段,您可以在指定预设或全部后自定义字段的输出行为。
例如,只输出错误和模块引入的原因。