记一次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')去掉即可

相关推荐
正一品程序员9 小时前
vue项目引入GoogleMap API进行网格区域圈选
前端·javascript·vue.js
star_11129 小时前
Jenkins+nginx部署前端vue项目
前端·vue.js·jenkins
JIngJaneIL9 小时前
农产品电商|基于SprinBoot+vue的农产品电商系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·毕设·农产品电商系统
c***72749 小时前
SpringBoot + vue 管理系统
vue.js·spring boot·后端
JIngJaneIL9 小时前
书店销售|书屋|基于SprinBoot+vue书店销售管理设计与实现(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·毕设·书店销售管理设计与实现
一 乐9 小时前
农产品销售|农产品供销|基于SprinBoot+vue的农产品供销系统(源码+数据库+文档)
java·前端·javascript·数据库·vue.js·spring boot
一 乐10 小时前
助农服务系统|基于SprinBoot+vue的助农服务系统(源码+数据库+文档)
前端·数据库·vue.js
by__csdn10 小时前
Vue 2 与 Vue 3:深度解析与对比
前端·javascript·vue.js·typescript·vue·css3·html5
小二·10 小时前
DevUI 和 MateChat:2025 年,我们是怎么把前端开发变轻松的
开发语言·javascript·vue.js
一 乐10 小时前
游戏账号交易|基于Springboot+vue的游戏账号交易系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端·游戏