ProgressPlugin
object = { boolean activeModules = true, boolean entries = false, function (number percentage, string message, [string] ...args) handler, boolean modules = true, number modulesCount = 500, boolean profile = false }
function (number percentage, string message, [string] ...args)
The ProgressPlugin
provides a way to customize how progress is reported during a compilation.
Usage
Create an instance of ProgressPlugin
and provide one of the allowed params.
Providing function
Provide a handler function which will be called when hooks report progress. handler
function arguments:
-
percentage
: a number between 0 and 1 indicating the completion percentage of the compilation -
message
: a short description of the currently-executing hook -
...args
: zero or more additional strings describing the current progress
const handler = (percentage, message, ...args) => { // e.g. Output each progress message directly to the console: console.info(percentage, message, ...args); }; new webpack.ProgressPlugin(handler);
Providing object
When providing an object
to the ProgressPlugin
, following properties are supported:
-
activeModules
show's active modules count and one active module in progress message -
entries
show's entries count in progress message handler: function (percentage, message, ...args)
-
modules
show's modules count in progress message -
modulesCount
a minimum modules count to start with. Takes effect whenmodules
property is enabled. -
profile
tellsProgressPlugin
to collect profile data for progress steps.
new webpack.ProgressPlugin({ entries: true, modules: true, modulesCount: 100, profile: true, handler: (percentage, message, ...args) => { // custom logic } });
Supported Hooks
The following hooks report progress information to ProgressPlugin
.
Hooks marked with * allow plugins to report progress information using
reportProgress
. For more, see Plugin API: Reporting Progress
Compiler
- compilation
- emit*
- afterEmit*
- done
Compilation
- buildModule
- failedModule
- succeedModule
- finishModules*
- seal*
- optimizeDependenciesBasic*
- optimizeDependencies*
- optimizeDependenciesAdvanced*
- afterOptimizeDependencies*
- optimize*
- optimizeModulesBasic*
- optimizeModules*
- optimizeModulesAdvanced*
- afterOptimizeModules*
- optimizeChunksBasic*
- optimizeChunks*
- optimizeChunksAdvanced*
- afterOptimizeChunks*
- optimizeTree*
- afterOptimizeTree*
- optimizeChunkModulesBasic*
- optimizeChunkModules*
- optimizeChunkModulesAdvanced*
- afterOptimizeChunkModules*
- reviveModules*
- optimizeModuleOrder*
- advancedOptimizeModuleOrder*
- beforeModuleIds*
- moduleIds*
- optimizeModuleIds*
- afterOptimizeModuleIds*
- reviveChunks*
- optimizeChunkOrder*
- beforeChunkIds*
- optimizeChunkIds*
- afterOptimizeChunkIds*
- recordModules*
- recordChunks*
- beforeHash*
- afterHash*
- recordHash*
- beforeModuleAssets*
- beforeChunkAssets*
- additionalChunkAssets*
- record*
- additionalAssets*
- optimizeChunkAssets*
- afterOptimizeChunkAssets*
- optimizeAssets*
- afterOptimizeAssets*
- afterSeal*
Source
© JS Foundation and other contributors
Licensed under the Creative Commons Attribution License 4.0.
https://v4.webpack.js.org/plugins/progress-plugin