vue中引入图片等静态资源的几种方式
在vue中引入图片等静态资源,由于部署的时候需要打包,打包后文件名字路径不一致,导致显示不了。以下为解决的几种方式:
1.样式直接引入:
<div class="imgItem"> <div class="imgLogo"></div> </div> .imgLogo { width: 100px; height: 100px; background: url('/@/assets/logo.png'); background-size: cover; }
2.作为变量引入
<div class="imgItem"> <div :style="{ backgroundImage: `url(${importLogo})` }" class="imgLogos"></div> </div>
a.
import Logo from '/@/assets/logo.png'
const importLogo = ref(Logo)
b.文件需要放在public文件夹
const importLogo3 = ref('/scene.jpg')
c.
onMounted(() => { import('/@/assets/logo.png').then((res) => { importLogo4.value = res.default }) })
d.
onMounted(() => { importLogo5.value = new URL('../assets/logo.png',import.meta.url) })
代码地址:https://gitee.com/yuexiayunsheng/vue3learn/blob/master/src/views/ImportImg.vue
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET10 - 预览版1新功能体验(一)