Webpack Exclude a specific file Webpack Exclude a specific file reactjs reactjs

Webpack Exclude a specific file


According to the Webpack documentation, you can do something like this.

exclude: {  test: [    /\.html$/,    /\.(js|jsx)$/,    /\.css$/,    /\.json$/,    /\.bmp$/,    /\.gif$/,    /\.jpe?g$/,    /\.png$/,  ],  exclude: [    'src/configs/configs/your.json'  ]}


To make exclude work I had to escape the dot in the specific file I wanted to exclude. Here's an example of excluding favicon.ico from a general rule and adding a special rule for it:

  {    test: /\.(ico|jpg|png|gif|eot|otf|webp|svg|ttf|woff|woff2)(\?.*)?$/,    exclude: /favicon\.ico$/,    loader: 'file-loader',    options: {      name: 'static/media/[name].[hash:8].[ext]',    },  },  // A special rule for favicon.ico to place it into build root directory.  {    test: /favicon\.ico$/,    loader: 'file-loader',    options: {      name: '[name].[ext]?[hash:8]',    },  },


For Webpack 5:

  {    test: /\.(png|svg|jpg|jpeg|gif)$/,    type: 'asset/resource',  },  {    test: /favicon\.ico$/,    type: 'asset/resource',    generator: {      filename: '[name][ext]',    },  },