Watch and WatchOptions

webpack can watch files and recompile whenever they change. This page explains how to enable this and a couple of tweaks you can make if watching does not work properly for you.



Turn on watch mode. This means that after the initial build, webpack will continue to watch for changes in any of the resolved files. Watch mode is turned off by default:

watch: false
In webpack-dev-server and webpack-dev-middleware watch mode is enabled by default.



A set of options used to customize watch mode:

watchOptions: {
  aggregateTimeout: 300,
  poll: 1000



Add a delay before rebuilding once the first file changed. This allows webpack to aggregate any other changes made during this time period into one rebuild. Pass a value in milliseconds:

aggregateTimeout: 300 // The default


For some systems, watching many file systems can result in a lot of CPU or memory usage. It is possible to exclude a huge folder like node_modules:

ignored: /node_modules/

It is also possible to use anymatch patterns:

ignored: "files/**/*.js"


boolean number

Turn on polling by passing true, or specifying a poll interval in milliseconds:

poll: 1000 // Check for changes every second
If watching does not work for you, try out this option. Watching does not work with NFS and machines in VirtualBox.