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

相关推荐
如果超人不会飞27 分钟前
TinyVue 组件库实战指南:从安装到上手一篇就够了
vue.js
开飞机的舒克_31 分钟前
vue3+router动态权限路由
前端·vue.js
dy17171 小时前
二维码打印
前端·javascript·vue.js
智商不够_熬夜来凑1 小时前
【Radio & Checkbox】
前端·javascript·vue.js
贺今宵2 小时前
Vue 3 + Capacitor 使用jeep-sqlite,web端使用本地sqlite数据库
前端·数据库·vue.js·sqlite·web
梦幻通灵4 小时前
Vue3 Element日期控件置灰明天之后日期
前端·javascript·vue.js
晓13135 小时前
【Cocos Creator 2.x】篇——第五章 游戏常用关键技术
前端·javascript·vue.js·游戏引擎
W_LuYi1855 小时前
Tauri + Rust + Vue 3 打造极速轻量桌面应用
java·开发语言·vue.js·rust
qq4356947016 小时前
Vue03
javascript·vue.js
用户549591657506 小时前
TinyVue Tree树形控件完全指南
vue.js