记一次favicon.ico的折腾

某项目需要将前端和后台整合在一起 我也不知道为啥要整合 上面有要求就整呗

正常前端npm run build打包后 dist内会根据设置自动生成favicon.ico文件在根目录下

但由于前后端整合 需要打包后将图标放在dist下的static文件夹里

需要的效果 打包后 index.html里

javascript 复制代码
<link rel="shortcut icon" href=./favicon.ico>

默认生成的是在dist根目录下

改成

javascript 复制代码
<link rel="shortcut icon" href=./static/favicon.ico>

尝试自定义favicon打包路径 下载html-loader 分别试了0.55和0.54版本 均会报错 (可能是我本地依赖的原因)

webpack.base.conf.js里的rules 配置 url-loader和html-loader 正常情况下应该能实现换路径了 但我的不知道为啥就一直报错

后来采用 直接打包前在项目里的index.html中指定href=./static/favicon.ico 从static里获取

并且在webpack.prod.conf.js里的

javascript 复制代码
new CopyWebpackPlugin([
      {
        from: './favicon.ico',
        to: ... static的代表变量
      }
    ])
  ],

单独指定一下favicon.ico存放的位置为static下

按上所示修改 会生成两个link标签 一个在staic下 一个在根目录下

将HtmlWebPackPlugin里的favicon:resolve('favicon.ico')去掉即可

相关推荐
技术钱5 小时前
vue3 封装图片上传预览组件支持docx、excel、pdf、图片、txt格式
vue.js·pdf·excel
一只小风华~7 小时前
Vue Router 路由元信息(meta)详解
前端·javascript·vue.js
计算机学姐8 小时前
基于微信小程序的垃圾分类管理系统【2026最新】
java·vue.js·spring boot·mysql·微信小程序·小程序·mybatis
武昌库里写JAVA9 小时前
C语言 #pragma once - C语言零基础入门教程
vue.js·spring boot·sql·layui·课程设计
小谭鸡米花10 小时前
高德地图电子围栏/地图选区/地图打点
前端·javascript·vue.js
好好好明天会更好11 小时前
Vue2中页面数据响应的问题
前端·javascript·vue.js
拉不动的猪11 小时前
回顾前端项目打包时--脚本引入时机与环境类型的判断问题
前端·vue.js·面试
月弦笙音11 小时前
【Vue组件】封装组件该考虑的核心点
前端·javascript·vue.js
EF@蛐蛐堂12 小时前
Federation vs Garfish vs Micro-app 微前端选型(二)
前端·vue.js·前端框架
一枚前端小能手12 小时前
🔍 重写vue之ref和reactive
前端·javascript·vue.js