传递给 rspack()
回调函数的第二个参数 stats
对象,是关于代码编译过程的信息来源。它包括:
Stats
对象提供了两个重要的方法:
toJson()
:以 统计 JSON 对象的形式输出信息,通常用于分析工具。toString()
:以字符串的形式输出信息,通常用于 CLI 工具。Rspack 还提供了 StatsFactory
和 StatsPrinter
来细粒度地控制输出对象或字符串。
通过 compilation.getStats()
或 new Stats(compilation)
创建与编译相关的统计对象。
用于检查编译过程中是否存在错误。
用于检查编译过程中是否存在警告。
以 统计 JSON 对象的形式返回编译信息。 统计配置 可以是字符串(预设值)或对象,用于进行细粒度控制。
以格式化的字符串形式返回编译信息(类似于 CLI 的输出)。
选项与 stats.toJson(options)
相同,只有一个附加选项
以下是如何使用 stats.toString()
的示例
类型: Compilation
获取相关的编译对象。
类型: string
获取此编译的哈希值,与 Compilation.hash
相同。
使用 MultiCompiler
执行多个编译任务时,它们的编译统计信息将被打包成一个 MultiStats
对象,该对象提供与 Stats
类似的方法和属性。
类型: string
获取合并所有编译哈希值后的唯一哈希值。
用于检查编译期间是否存在错误,只有在所有编译都没有错误的情况下才会返回 false
。
用于检查编译期间是否存在警告,只有在所有编译都没有警告的情况下才会返回 false
。
根据 统计配置,生成所有 统计 json 对象,将它们包装在 children
字段中,并总结 errors
和 warnings
。
根据 统计配置,连接所有编译的统计输出字符串。
用于从 Compilation 生成统计 json 对象,并在生成过程中提供钩子,以便进行细粒度控制。
可以通过 compilation.hooks.statsFactory
获取。或者通过 new StatsFactory()
创建一个新的。
有关更多详细信息,请参阅 统计工厂钩子。
StatsFactory
的核心方法,根据 type
指定当前数据结构,查找并运行相应的生成器以生成统计 json 项目。
StatsFactory
对象只处理钩子的调用,相应类型的处理代码可以在DefaultStatsFactoryPlugin
中找到。
用于从统计 json 对象生成输出字符串,并在生成过程中提供钩子,以便进行细粒度控制。
可以通过 compilation.hooks.statsPrinter
获取。或者通过 new StatsPrinter()
创建一个新的。
有关更多详细信息,请参阅 统计打印机钩子。
StatsPrinter
的核心方法,根据 type
指定当前数据结构,查找并运行相应的生成器以生成统计项目的输出字符串。
StatsPrinter
对象只处理钩子的调用,相应类型的处理代码可以在DefaultStatsPrinterPlugin
中找到。