浅谈在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 相关文章推荐
几个常用的JavaScript字符串处理函数 - split()、join()、substring()和indexOf()
Jun 02 Javascript
firefox和IE系列的相关区别整理 以备后用
Dec 28 Javascript
Whatever:hover 无需javascript让IE支持丰富伪类
Jun 29 Javascript
Ext JS 4官方文档之三 -- 类体系概述与实践
Dec 16 Javascript
Javascript模块化编程(一)模块的写法最佳实践
Jan 17 Javascript
js 页面元素的几个用法总结
Nov 18 Javascript
javascript简单实现类似QQ头像弹出效果的方法
Aug 03 Javascript
Javascript typeof与instanceof的区别
Oct 18 Javascript
微信小程序 石头剪刀布实例代码
Jan 04 Javascript
vuex的使用及持久化state的方式详解
Jan 23 Javascript
Vue中使用clipboard实现复制功能
Sep 05 Javascript
微信小程序自定义导航教程(兼容各种手机)
Dec 12 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
PHP.MVC的模板标签系统(二)
2006/09/05 PHP
解析:使用php mongodb扩展时 需要注意的事项
2013/06/18 PHP
PHP中copy on write写时复制机制介绍
2014/05/13 PHP
smarty模板引擎使用内建函数foreach循环取出所有数组值的方法
2015/01/22 PHP
PHP执行linux命令常用函数汇总
2016/02/02 PHP
php上传后台无法收到数据解决方法
2019/10/28 PHP
Js与下拉列表处理问题解决
2014/02/13 Javascript
按Enter键触发事件的jquery方法实现代码
2014/02/17 Javascript
JQuery EasyUI 加载两次url的原因分析及解决方案
2014/08/18 Javascript
JavaScript字符串对象toLowerCase方法入门实例(用于把字母转换为小写)
2014/10/17 Javascript
浅谈JavaScript对象与继承
2016/07/10 Javascript
jQuery实现底部浮动窗口效果
2016/09/07 Javascript
bootstrap输入框组使用方法
2017/02/07 Javascript
JS实现关键词高亮显示正则匹配
2018/06/22 Javascript
详解react native页面间传递数据的几种方式
2018/11/07 Javascript
checkbox在vue中的用法小结
2018/11/13 Javascript
jQuery实现简单的Ajax调用功能示例
2019/02/15 jQuery
js实现经典贪吃蛇小游戏
2020/03/19 Javascript
在vue项目中引用Antv G2,以饼图为例讲解
2020/10/28 Javascript
使用python调用浏览器并打开一个网址的例子
2014/06/05 Python
Python解决鸡兔同笼问题的方法
2014/12/20 Python
详解详解Python中writelines()方法的使用
2015/05/25 Python
Python实现读取txt文件中的数据并绘制出图形操作示例
2019/02/26 Python
Python实现12306火车票抢票系统
2019/07/04 Python
Django实现发送邮件找回密码功能
2019/08/12 Python
pytorch的梯度计算以及backward方法详解
2020/01/10 Python
python实现打砖块游戏
2020/02/25 Python
在Ubuntu中安装并配置Pycharm教程的实现方法
2021/01/06 Python
详解Canvas 跨域脱坑实践
2018/11/07 HTML / CSS
Omio中国:全欧洲低价大巴、火车和航班搜索和比价
2018/08/09 全球购物
英国首屈一指的票务公司:See Tickets
2019/05/11 全球购物
英国水族馆和池塘用品购物网站:Warehouse Aquatics
2019/08/29 全球购物
最新奶茶店创业计划书范文
2014/02/08 职场文书
民主生活会对照检查材料思想汇报
2014/09/27 职场文书
2014年有孩子的离婚协议书范本
2014/10/08 职场文书
关于运动会的宣传稿
2015/07/23 职场文书