vue 项目中 动态加载图片src的解决方法

发布时间:2024-11-20 17:33

创新思维:在项目中引入新的解决方案 #生活技巧# #职场生存技巧# #项目管理方法#

最新推荐文章于 2024-10-11 19:27:41 发布

AIU哎呀 于 2019-02-15 15:29:39 发布

vue项目中 动态加载图片src的解决方法

一、问题描述:

v-bind动态绑定的src属性【:src】加载static中的图片可以,但是的加载的src中的图片就不行了;普通费动态绑定的src属性是可以加载src资源文件夹下的图片的

二、原因【vue-cli的assets和static的两个文件的区别】:

assets: 在项目编译的过程中会被webpack处理解析为模块依赖,只支持相对路径的形式,如< img src=”./logo.png”>和background:url(./logo.png),”./logo.png”是相对资源路径,将由webpack解析为模块依赖

static: 在这个目录下文件不会被webpack处理,简单就是说存放第三方文件的地方,不会被webpack解析。它会直接被复制到最终的打包目录(默认是dist/static)下。必须使用绝对路径引用这些文件,这是通过config.js文件中的build.assetsPublic和build.assertsSubDirectory链接来确定的。任何放在static/中文件需要以绝对路径的形式引用:/static[filename]

根据webpack的特性,总的来说就是static放不会变动的、第三方的文件,asserts放可能会变动的文件

那么,当动态加载assets或者本文件的图片出现404的状态码如何解决:

解决方法:

①将图片作为模块加载进去,比如images:[{src:require(‘./1.png’)},{src:require(‘./2.png’)}],这样webpack就能将其解析。

②将图片放到static目录下,但必须写成绝对路径如images:[{src:”/static/1.png”},{src:”/static/2.png”}]这样图片也会显示出来,当然你也可以通过在webpack.base.config.js定义来缩短路径的书写长度。

当然你说当本地图片太多时,这样写岂不是很麻烦,那么其实我们是一这样简化操作的。
第一步:在static里面新建一个json文件夹
在这里插入图片描述
第二部:填写json文件,如图

在这里插入图片描述

第三部:将json引入响应的vue文件中,解析引用就行了

在这里插入图片描述

网址:vue 项目中 动态加载图片src的解决方法 https://www.yuejiaxmz.com/news/view/158299

相关内容

“import ... =“ 只能在typescript 文件中使用(解决方法)
vue
016Springboot+vue基于体质分析的个性化健身方案生成系统与设计
探索高效日程管理:Vue与FullCalendar的完美融合
提速网站加载:优化图片加载,让用户体验翻倍提升相信大家在日常生活中,或者在完善某个项目时,会遇到页面上存在大量图片加载缓
如何在PPT中添加图片,在PPT中添加图片的方法
基于SpringBoot+Vue的二手图书交易系统设计与实现
基于SpringBoot+Vue前后端分离的在线教育平台项目
基于SpringBoot+Vue+uniapp的家庭财务管理系统(源码+lw+部署文档+讲解等)
Java基于Springboot+vue的家庭理财系统 收入支出,图形可视化分析

随便看看