为什么webpack打包后HTML中的图片src路径变成了[object Module]?

2026-04-05 19:231阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计272个文字,预计阅读时间需要2分钟。

为什么webpack打包后HTML中的图片src路径变成了[object Module]?

在HTML中添加img图片: Document

在html中引入img图片

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document1</title> </head> <body> <div id="root" > <img src="./logo.jpg" alt=""> </div> </html>

使用url-loader/file-loader结合html-loader打包

{ test: /\.(png|jpg|gif|jpeg)$/, use: [{ loader: 'url-loader', loader: 'file-loader', options: { name: '[name].[ext]', limit: 10240 } }] }, { test: /\.(htm|html)$/, loader: 'html-loader' }

发现打包后html里面,img的src为[object Module]

但是如果使用"file-loader": "^4.2.0"或者"file-loader": "^2.0.0"却可以正常打包

后来发现file-loader在新版本中esModule默认为true,因此手动设置为false

为什么webpack打包后HTML中的图片src路径变成了[object Module]?

{ test: /\.(png|jpg|gif|jpeg)$/, use: [{ loader: 'url-loader', // loader: 'file-loader', options: { esModule: false, // 这里设置为false name: '[name].[ext]', limit: 10240 } }] }

这样就可以正常打包了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

本文共计272个文字,预计阅读时间需要2分钟。

为什么webpack打包后HTML中的图片src路径变成了[object Module]?

在HTML中添加img图片: Document

在html中引入img图片

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document1</title> </head> <body> <div id="root" > <img src="./logo.jpg" alt=""> </div> </html>

使用url-loader/file-loader结合html-loader打包

{ test: /\.(png|jpg|gif|jpeg)$/, use: [{ loader: 'url-loader', loader: 'file-loader', options: { name: '[name].[ext]', limit: 10240 } }] }, { test: /\.(htm|html)$/, loader: 'html-loader' }

发现打包后html里面,img的src为[object Module]

但是如果使用"file-loader": "^4.2.0"或者"file-loader": "^2.0.0"却可以正常打包

后来发现file-loader在新版本中esModule默认为true,因此手动设置为false

为什么webpack打包后HTML中的图片src路径变成了[object Module]?

{ test: /\.(png|jpg|gif|jpeg)$/, use: [{ loader: 'url-loader', // loader: 'file-loader', options: { esModule: false, // 这里设置为false name: '[name].[ext]', limit: 10240 } }] }

这样就可以正常打包了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。