vue实现图片加载完成前的loading组件方法


Posted in Javascript onFebruary 05, 2018

如下所示:

<template>
 <img :src="url">
</template>
<script>
 export default {
  props: ['src'], // 父组件传过来所需的url
  data() {
   return {
    url: 'http://www.86y.org/images/loading.gif' // 先加载loading.gif
   }
  },
  mounted() {
   var newImg = new Image()
   newImg.src = this.src
   newImg.onerror = () => { // 图片加载错误时的替换图片
    newImg.src = 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1489486509807&di=22213343ba71ad6436b561b5df999ff7&imgtype=0&src=http%3A%2F%2Fa0.att.hudong.com%2F77%2F31%2F20300542906611142174319458811.jpg'
   }
   newImg.onload = () => { // 图片加载成功后把地址给原来的img
    this.url = newImg.src
   }
  }
 }
</script>

以下为纯js代码

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>loading</title>
</head>
<body>
 <img id="img">
 <script>
  window.onload = () => {
   var img = document.querySelector('#img');
   img.src = 'http://www.86y.org/images/loading.gif'; // 先加载loading.gif
   var newImg = new Image();
   newImg.src = 'https://avatars3.githubusercontent.com/u/1?v=3';
   newImg.onerror = () => { // 图片加载错误时的替换图片
    newImg.src = 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1489486509807&di=22213343ba71ad6436b561b5df999ff7&imgtype=0&src=http%3A%2F%2Fa0.att.hudong.com%2F77%2F31%2F20300542906611142174319458811.jpg';
   }
   newImg.onload = () => { // 图片加载成功后把地址给原来的img
    img.src = newImg.src
   }
  }
 </script>
</body>
</html>

以上这篇vue实现图片加载完成前的loading组件方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery ajax 同步异步的执行示例代码
Jun 23 Javascript
js获得鼠标的坐标值的方法
Mar 13 Javascript
解决javascript:window.close()在chrome,Firefox下失效的问题
May 07 Javascript
用JavaScript实现动画效果的方法
Jul 20 Javascript
jquery中加载图片自适应大小主要实现代码
Aug 23 Javascript
最好用的省市二级联动 原生js实现你值得拥有
Sep 22 Javascript
JavaScript使用focus()设置焦点失败的解决方法
Sep 03 Javascript
jquery 插件实现多行文本框[textarea]自动高度
Mar 04 Javascript
Javascript防止图片拉伸的自适应处理方法
Dec 26 Javascript
element-ui表格列金额显示两位小数的方法
Aug 24 Javascript
mpvue实现小程序签到金币掉落动画(api实现)
Oct 17 Javascript
基于VSCode调试网页JavaScript代码过程详解
Jul 20 Javascript
JS设计模式之策略模式概念与用法分析
Feb 05 #Javascript
Node.js成为Web应用开发最佳选择的原因
Feb 05 #Javascript
Node.js上传文件功能之服务端如何获取文件上传进度
Feb 05 #Javascript
javascript实现最长公共子序列实例代码
Feb 05 #Javascript
JS设计模式之访问者模式定义与用法分析
Feb 05 #Javascript
基于vue 动态加载图片src的解决方法
Feb 05 #Javascript
vue2.0 datepicker使用方法
Feb 04 #Javascript
You might like
如何在PHP中使用Oracle数据库(2)
2006/10/09 PHP
PHP判断远程图片或文件是否存在的实现代码
2014/02/20 PHP
人脸识别测颜值、测脸龄、测相似度微信接口
2016/04/07 PHP
thinkPHP实现的省市区三级联动功能示例
2017/05/05 PHP
php连接mysql数据库最简单的实现方法
2019/09/24 PHP
JavaScript入门教程(5) js Screen屏幕对象
2009/01/31 Javascript
jQuery.autocomplete 支持中文输入(firefox)修正方法
2011/03/10 Javascript
jquerymobile checkbox及时刷新才能获取其准确值
2012/04/14 Javascript
Javascript的各种节点操作实例演示代码
2012/06/27 Javascript
NodeJS学习笔记之(Url,QueryString,Path)模块
2015/01/13 NodeJs
Javascript 拖拽雏形中的一些问题(逐行分析代码,让你轻松了拖拽的原理)
2015/01/23 Javascript
javascript的列表切换【实现代码】
2016/05/03 Javascript
原生js轮播(仿慕课网)
2017/02/15 Javascript
网页中右键功能的实现方法之contextMenu的使用
2017/02/20 Javascript
深入解析nodejs HTTP服务
2017/07/25 NodeJs
移动端效果之Swiper详解
2017/10/09 Javascript
解决vue-cli3 使用子目录部署问题
2018/07/19 Javascript
JavaScript显式数据类型转换详解
2019/03/18 Javascript
python中WSGI是什么,Python应用WSGI详解
2017/11/24 Python
使用Python爬了4400条淘宝商品数据,竟发现了这些“潜规则”
2018/03/23 Python
Django生成PDF文档显示在网页上以及解决PDF中文显示乱码的问题
2019/07/04 Python
Python 内置函数globals()和locals()对比详解
2019/12/23 Python
Python和Sublime整合过程图示
2019/12/25 Python
Pytorch GPU显存充足却显示out of memory的解决方式
2020/01/13 Python
python实现删除列表中某个元素的3种方法
2020/01/15 Python
浅谈Pycharm的项目文件名是红色的原因及解决方式
2020/06/01 Python
Melissa鞋马来西亚官方网站:MDreams马来西亚
2018/04/05 全球购物
微软中国官方旗舰店:销售Surface、Xbox One、笔记本电脑、Office
2018/07/23 全球购物
业务主管岗位职责范本
2013/12/25 职场文书
2016父亲节感恩话语
2015/12/09 职场文书
如何让2019年上半年的工作总结更出色!
2019/07/01 职场文书
创业计划书之服装
2019/10/07 职场文书
python中的被动信息搜集
2021/04/29 Python
JS中一些高效的魔法运算符总结
2021/05/06 Javascript
python调试工具Birdseye的使用教程
2021/05/25 Python
nginx 添加http_stub_status_module模块
2022/05/25 Servers