vue项目报favicon.ico错误

vue项目报favicon.ico错误,

/favicon.ico:1 GET http://localhost/favicon.ico net::ERR_CONNECTION_REFUSED

vite中创建vue的index.html代码是:

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <link rel="icon" type="image/svg+xml" href="vite.svg" sizes="any"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Vite + Vue</title>
  </head>
  <body>
    <div id="app"></div>
    <script type="module" src="/src/main.js"></script>
  </body>
</html>

发现没有favicon.ico的常规代码,一般是:

<link rel="icon" href="./favicon.ico" type="image/x-icon">

这个需要到专门的在线制作ico图标的网站,将图片转换成ico图片。

而vue中使用svg文件,可以直接显示的。用chrome浏览器,就能正常显示。所以,出现这个问题,没有使用最新版的chrome浏览器,用最新的chrome浏览器就可以识别svg图形文件。

 

### 更改 Vue.js 项目中的 Favicon.ico 图标 #### 使用配置文件统一管理 Favicon 路径 为了简化不同项目Favicon管理,可以在配置文件中设置Favicon路径。通过这种方式,在多个地方使用的HTML模板可以引用同一个配置项,从而减少重复劳动和错误发生的可能性。 对于Vue CLI创建的应用程序来说,可以通过`vue.config.js`来进行全局性的配置调整[^1]: ```javascript // vue.config.js module.exports = { chainWebpack: config => { config.plugin('html').tap(args => { args[0].favicon = './src/assets/favicon.ico'; return args; }); } } ``` 此段代码会告诉HtmlWebpackPlugin使用指定位置的图片作为网页标签页的小图标。 #### 利用 JavaScript 动态加载 Favicon 另一种方式是在应用初始化阶段利用JavaScript动态改变文档头部链接元素指向的新图标资源地址[^2]: ```javascript function changeFavIcon(url){ let link = document.querySelector("link[rel*='icon']") || document.createElement('link'); link.type = 'image/x-icon'; link.rel = 'shortcut icon'; link.href = url; document.getElementsByTagName('head')[0].appendChild(link); } changeFavIcon('/path/to/new-favicon.ico'); // 替换成实际图标URL ``` 这种方法的好处在于不需要重新编译整个应用程序就可以即时更新浏览器Tab上的显示图像。 #### 修改 Webpack 配置以支持静态资源处理 如果上述两种方法未能达到预期效果,则可能是因为构建工具链对静态资产的支持不够完善所致。此时应该检查并适当修改WebPack的相关配置选项,比如在`build/webpack.dev.conf.js`里面加入如下所示的一行配置[^3]: ```javascript new HtmlWebpackPlugin({ ... favicon: path.resolve(__dirname, '../static/bitbug_favicon.ico'), }) ``` 这一步骤确保打包过程中能够正确识别并引入所需的Favicon文件。 #### 手动编辑 HTML 文件指明新图标路径 最直接的办法就是直接操作位于`public/index.html`内的<link>标记,把其`href`属性更改为所要替换的那个`.ico`文件的位置[^4]: ```html <!-- public/index.html --> <!DOCTYPE html> <html lang="en"> <head> <!-- Other meta tags and links... --> <link rel="icon" href="%PUBLIC_URL%/new-favicon.ico"> </head> <body> ... </body> </html> ``` 完成以上任一或组合措施之后,请记得重启开发服务器以便使改动生效,并确认新的Favicon已经成功应用于页面之上。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

andux

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值