Electron Vite打包后,部分图标未显示的解决方案


背景

这个问题,弄了一晚上,头都大了,找了一堆博客也没解决。主要参考这个:https://blog.csdn.net/m0_73845616/article/details/129741099

下面讲一下我的解决方案。


解决方案

上面链接里的方法,我采用第二、三个都没有解决。第一个也需要稍作改动才能用。

  1. 第一个需要导入一个vue组件,图片用svg的话,直接将svg代码包裹在下面就行。
  2. 在使用该图片的地方,import该组件后,再用<component :is="组件名"/>代替<img :src=""/>,这样使用,打出来的包是没问题的。

    以前设置图片,是用img+一个响应式的变量,这样打包后显示不出来。

    需要改成component+is的方式,这样is设置为一个相应式变量(一个组件),也能展示出图片,最后打包出来也没有问题。

原因分析

主要原因还是vite对打包后资源的访问方式不同,静态设置的src没有问题,vite会改动相应的src原位置到相应的打包位置。但通过相应式动态设置的src,vite不会改动,最后就没有改资源的映射到路径,最后就找不到资源,无法展示。

相关推荐
用户2526327534710 分钟前
如何实现MySQL多表联查
前端
风吹心凉14 分钟前
第2天|拆解ReAct Prompt:Thought、Action、Observation与信息流
javascript·react.js·prompt
今天AI了吗15 分钟前
【AI】一文讲清 RAG:从大模型局限到企业级知识库落地流程
前端·javascript·人工智能·python·深度学习·机器学习·easyui
hunterandroid17 分钟前
[鸿蒙从零到一] HarmonyOS 冷启动瀑布图分析与关键路径裁剪实战
前端·华为
郭邯21 分钟前
用 Canvas 实现纯前端图片格式互转:PNG/JPG/WebP 一键切换,还能控制质量与尺寸
前端
shmily麻瓜小菜鸡25 分钟前
JavaScript / TypeScript 易踩坑知识点完全指南 -假值(Falsy Values)完全指南
开发语言·javascript·typescript
工边页字26 分钟前
Electron应用的8种防护方式
前端·javascript·electron
小鱼咕噜咕噜33 分钟前
Element UI的el-upload文件上传与ZIP文件解压上传
javascript
labixiong34 分钟前
z-index: 99999 输给 z-index: 2?原生弹窗的 Top Layer 排位战:后进者居上、看得见却点不着
前端·html