Webpack - 清单中文件加载器的双重记录

问题描述

有人可以帮我解决这个问题吗?我不知道我在 manifest.json 文件中获得 favicon.png 额外记录的原因是什么。

{
  "bundle.js": "/static/bundle.7325cebbc13d893301f4.js","bundle.png": "/static/assets/favicon.4b85b6f90fd2d4b9e8f48b9b0272eeff.png","assets/favicon.png": "/static/assets/favicon.4b85b6f90fd2d4b9e8f48b9b0272eeff.png"
}

为什么有第二行bundle.png?它显然与第三行中的文件相同。我的 webpack 配置有问题吗?

export const clientProdConfig: Configuration = {
  name: 'client',mode: 'production',target: 'web',devtool: false,entry: {
    bundle: [path.resolve(process.cwd(),'src/client.tsx')]
  },output: {
    path: path.resolve(process.cwd(),'dist/static'),filename: '[name].[contenthash].js',publicPath: '/static/'
  },module: {
    rules: [
      {
        test: /.(js|jsx|ts|tsx)$/i,exclude: /[\\/]node_modules[\\/]/,use: {
          loader: 'babel-loader',options: {
            presets: ['@babel/preset-react','@babel/preset-typescript'],plugins: [
              ['@babel/plugin-proposal-decorators',{ legacy: true }],'@babel/plugin-proposal-class-properties'
            ]
          }
        }
      },{
        exclude: /\.(js|jsx|ts|tsx|css|mjs|html|ejs|json)$/i,use: [
          {
            loader: 'file-loader',options: {
              name: '[name].[contenthash].[ext]',outputPath: 'assets'
            }
          }
        ]
      }
    ]
  },resolve: {
    extensions: ['.tsx','.ts','.js'],modules: ['src','node_modules']
  },plugins: [
    new WebpackManifestPlugin({ fileName: 'manifest.json' }),new DefinePlugin({
      __SERVER__: false,__broWSER__: true
    })
  ]
};

我正在使用以下软件包版本:

"webpack": "^5.11.1","file-loader": "^6.2.0","webpack-manifest-plugin": "^3.0.0"

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)