| | |
| | | pathinfo: isEnvDevelopment, |
| | | // There will be one main bundle, and one file per asynchronous chunk. |
| | | // In development, it does not produce real files. |
| | | // contenthash => hash |
| | | filename: isEnvProduction |
| | | ? 'static/js/[name].[contenthash:8].js' |
| | | ? 'static/js/[name].[hash:8].js' |
| | | : isEnvDevelopment && 'static/js/bundle.js', |
| | | // TODO: remove this when upgrading to webpack 5 |
| | | futureEmitAssets: true, |
| | | // There are also additional JS chunk files if you use code splitting. |
| | | // contenthash => hash |
| | | chunkFilename: isEnvProduction |
| | | ? 'static/js/[name].[contenthash:8].chunk.js' |
| | | ? 'static/js/[name].[hash:8].chunk.js' |
| | | : isEnvDevelopment && 'static/js/[name].chunk.js', |
| | | // We inferred the "public path" (such as / or /my-project) from homepage. |
| | | // We use "/" in development. |
| | |
| | | new MiniCssExtractPlugin({ |
| | | // Options similar to the same options in webpackOptions.output |
| | | // both options are optional |
| | | filename: 'static/css/[name].[contenthash:8].css', |
| | | chunkFilename: 'static/css/[name].[contenthash:8].chunk.css', |
| | | // contenthash => hash |
| | | filename: 'static/css/[name].[hash:8].css', |
| | | chunkFilename: 'static/css/[name].[hash:8].chunk.css', |
| | | }), |
| | | // Generate a manifest file which contains a mapping of all asset filenames |
| | | // to their corresponding output file so that tools can pick it up without |