浅谈在vue-cli3项目中解决动态引入图片img404的问题


Posted in Javascript onAugust 04, 2020

博主最近手头再做一个项目,需要调用天气接口,并且还要动态显示天气相关图片icon。

本来以为没什么大问题,结果硬生生被这个动态图片路径搞得民不聊生(博主还是 too young,too simple~),给出效果图:

浅谈在vue-cli3项目中解决动态引入图片img404的问题

就是那个红框选中的那个天气状况图标icon要根据当前城市获取当前城市天气状态码,再根据当前城市状态码找到这个对应的天气图标icon~~

按照一般的开发模式,静态图片路径是相对路径还是绝对路径都可以,因为图片路径是静态的是死的,所以webpack去找这个图片路径的时候是能找到的。

但是博主这个路径是动态的,博主在computed给出一个拼接了变量的路径,项目启动在浏览器下死活出不了这个图片,死活都是404~~~

浅谈在vue-cli3项目中解决动态引入图片img404的问题

就是上述这样的路径是不行的,一直是404,原因也讲了点,vue-cli3中内置的webpack会把图片当做一个模块引用,然后打包等等,路径就不对了,我们的静态资源是不需要打包等等的,

静态资源是直接被webpack copy到对应的静态资源文件夹下,所以根本原因就在于,用了动态路径的图片,webpack将它认作为一个模块打包了,路径错乱,所以404。

找到了原因就很简单了,解决这个动态路径图片404的方案其实vue-cli3官网就有写过(vie官方人员还是相当靠谱的,虽然坑也多~~~)

vue-cli3的官方解决方案

其实很简单:

1.

浅谈在vue-cli3项目中解决动态引入图片img404的问题

引入项目的根路径前缀 baseUrl

baseUrl: process.env.BASE_URL

2.

浅谈在vue-cli3项目中解决动态引入图片img404的问题

浅谈在vue-cli3项目中解决动态引入图片img404的问题

把你所用的动态图片img放到public目录下

3.

浅谈在vue-cli3项目中解决动态引入图片img404的问题

修改你的动态路径图片地址

fullUrl: function() {
  // `this` 指向 vm 实例
  return `${this.baseUrl}cond-icon-heweather/${this.twCode}.png`;
 }

4.

浅谈在vue-cli3项目中解决动态引入图片img404的问题

将图片路径绑定到你的页面上去,这里博主还加了一个sync修饰词,有兴趣的同学去研究一下这个sync干什么用的。点我

这样就可以解决引入动态图片img404这个令人头疼的问题啦~

以上这篇浅谈在vue-cli3项目中解决动态引入图片img404的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
ie 调试javascript的工具
Apr 29 Javascript
JavaScript高级程序设计(第3版)学习笔记7 js函数(上)
Oct 11 Javascript
javascript随机将第一个dom中的图片添加到第二个div中示例
Oct 08 Javascript
javascript验证上传文件的类型限制必须为某些格式
Nov 14 Javascript
ExtJs动态生成treepanel的Json格式
Jul 19 Javascript
基于JavaScript的操作系统你听说过吗?
Jan 28 Javascript
JavaScript每天必学之基础知识
Sep 17 Javascript
vuejs使用FormData实现ajax上传图片文件
Aug 08 Javascript
简单实现js进度条加载效果
Mar 25 Javascript
微信小程序功能之全屏滚动效果的实现代码
Nov 22 Javascript
vue 自定指令生成uuid滚动监听达到tab表格吸顶效果的代码
Sep 16 Javascript
JavaScript实现网页跨年倒计时
Dec 02 Javascript
解决vuecli3中img src 的引入问题
Aug 04 #Javascript
简介JavaScript错误处理机制
Aug 04 #Javascript
vue 出现data-v-xxx的原因及解决
Aug 04 #Javascript
elementui更改el-dialog关闭按钮的图标d的示例代码
Aug 04 #Javascript
vue 实现根据data中的属性值来设置不同的样式
Aug 04 #Javascript
解决Vue中使用keepAlive不缓存问题
Aug 04 #Javascript
vue根据条件不同显示不同按钮的操作
Aug 04 #Javascript
You might like
详谈phpAdmin修改密码后拒绝访问的问题
2017/04/03 PHP
Yii2框架类自动加载机制实例分析
2018/05/02 PHP
一个不错的应用,用于提交获取文章内容,不推荐用
2007/03/03 Javascript
JavaScript中关于indexOf的使用方法与问题小结
2010/08/05 Javascript
javascript 学习笔记(八)javascript对象
2011/04/12 Javascript
javascript实现点击商品列表checkbox实时统计金额的方法
2015/05/15 Javascript
原生JS和jQuery版实现文件上传功能
2016/04/18 Javascript
jQuery弹出div层过2秒自动消失
2016/11/29 Javascript
Angular限制input框输入金额(是小数的话只保留两位小数点)
2017/07/13 Javascript
基于Jquery Ajax type的4种类型(详解)
2017/08/02 jQuery
input输入框内容实时监测(附代码)
2017/08/15 Javascript
旺旺在线客服代码 旺旺客服代码生成器
2018/01/09 Javascript
nodejs实现连接mongodb数据库的方法示例
2018/03/15 NodeJs
Express本地测试HTTPS的示例代码
2018/06/06 Javascript
微信小程序实现多选功能
2018/11/04 Javascript
express启用https使用小记
2019/05/21 Javascript
layer提示框添加多个按钮选择的实例
2019/09/12 Javascript
js实现购物车商品数量加减
2020/09/21 Javascript
[36:17]DOTA2上海特级锦标赛 - VGL音乐会全集
2016/03/06 DOTA
[15:07]lgd_OG_m2_BP
2019/09/10 DOTA
Python装饰器使用实例:验证参数合法性
2015/06/24 Python
Python中将变量按行写入txt文本中的方法
2018/04/03 Python
Python DataFrame.groupby()聚合函数,分组级运算
2018/09/18 Python
在python中利用最小二乘拟合二次抛物线函数的方法
2018/12/29 Python
Python descriptor(描述符)的实现
2020/11/15 Python
台湾森森购物网:U-mall
2017/10/16 全球购物
澳大利亚首屈一指的鞋类品牌:Tony Bianco
2018/03/13 全球购物
美国体育用品商店:Academy Sports + Outdoors
2020/01/04 全球购物
实习期自我鉴定
2013/10/11 职场文书
表彰先进的通报
2014/01/31 职场文书
政法学院毕业生求职信
2014/02/28 职场文书
2015年校长新年寄语
2014/12/08 职场文书
2015年学校总务处工作总结
2015/05/19 职场文书
受欢迎的自荐信,就这么写!
2019/04/19 职场文书
农村房屋租赁合同(范本)
2019/07/23 职场文书
Vue.js中v-bind指令的用法介绍
2022/03/13 Vue.js