父组件给子组件src地址;

 columns(){
return [
{'title': '图片', 'key': 'img', render(h, {row}){
return h(LoadingImg, {
props: {//把这些传给子组件
'w': ,
'h': ,
'src': 'http://192.168.2.233/carimages_small/' + row.id + '/view/' + row.img
}
});
}},
{'title': '编号', 'key': 'id'},
{'title': '品牌', 'key': 'brand'},
{'title': '车系', 'key': 'series'},
{'title': '颜色', 'key': 'color'},
{'title': '售价', 'key': 'price'},
{'title': '环保', 'key': 'exhaust'},
{'title': '发动机', 'key': 'engine'},
{'title': '燃料', 'key': 'fuel'}
];
}

子组件

props: ['w', 'h', 'src'],
methods: {
change(){
// 显示菊花
this.isShowPin = true;
// 创建一个虚拟图片
var img = new Image();
// 设置src
img.src = this.src;
// 监听load
img.onload = () => {
// 加载完毕之后替了
this.picurl = this.src;
// 隐藏菊花
this.isShowPin = false;
}
}
},
//创建前直接显示
created(){
this.change();
},
//改变后重新加载loading
watch:{
src(){
this.change()
}
}

loading

<template>
<div style="position:relative;" :style="{'width': w + 'px', 'height': h + 'px'}">
<img :style="{'width': w + 'px', 'height': h + 'px'}" :src="picurl" >
<Spin fix v-show="isShowPin">
<Icon type="ios-loading" size= class="demo-spin-icon-load"></Icon>
</Spin>
</div>
</template> <script>
export default {
props: ['w', 'h', 'src'],
data(){
return {
picurl: '',
isShowPin: false
};
},
methods: {
change(){
// 显示菊花
this.isShowPin = true;
// 创建一个虚拟图片
var img = new Image();
// 设置src
img.src = this.src;
// 监听load
img.onload = () => {
// 加载完毕之后替了
this.picurl = this.src;
// 隐藏菊花
this.isShowPin = false;
}
}
},
created(){
this.change();
},
watch:{
src(){
this.change()
}
}
}
</script> <style>
.demo-spin-icon-load{
animation: ani-demo-spin 1s linear infinite;
}
@keyframes ani-demo-spin {
from { transform: rotate(0deg);}
% { transform: rotate(180deg);}
to { transform: rotate(360deg);}
}
.demo-spin-col{
height: 100px;
position: relative;
border: 1px solid #eee;
}
</style>

喜欢的小伙伴可以关注我的微信公众号“前端伪大叔”

vue-loading图的更多相关文章

  1. 简易仿ios菊花加载loading图

    原文链接:https://mp.weixin.qq.com/s/wBbQgOfr59wntNK9ZJ5iRw 项目中经常会用到加载数据的loading显示图,除了设计根据app自身设计的动画loadi ...

  2. 利用box-shadow制作loading图

    我们见过很多利用css3做的loading图,像下面这种应该是很常见的.通常制作这种loading,我们会一个标签对应一个圆,八个圆就要八个标签.但是这种做法很浪费资源.我们可以只用一个标签,然后利用 ...

  3. 使用HTML5制作loading图

    昨天发了一篇使用HTML5 canvas写的时钟的文章,今天发一篇关于使用HTML5制作loading图的文章. <!DOCTYPE html> <html> <head ...

  4. 页面初次渲染loading图

    当第一次进入页面时,可能由于网速或其他原因请求接口需要等待很长时间,这是页面一片空白,很难看,切交互性也不好,这是,我们常常放上一个loading等待图给用户以反馈 // 页面尚未加载时的loadin ...

  5. vue数据请求显示loading图

    一般项目中,有时候会要求,你在数据请求的时候显示一张gif图片,然后数据加载完后,消失.这个,一般只需要在封装的axios中写入js事件即可.当然,我们首先需要在app.vue中,加入此图片.如下: ...

  6. 写一个Vue loading 插件

    什么是vue插件? 从功能上说,插件是为Vue添加全局功能的一种机制,比如给Vue添加一个全局组件,全局指令等: 从代码结构上说,插件就是一个必须拥有install方法的对象,这个方法的接收的第一个参 ...

  7. vue2整个项目中,数据请求显示loading图

    一般项目中,有时候会要求,你在数据请求的时候显示一张gif图片,然后数据加载完后,消失.这个,一般只需要在封装的axios中写入js事件即可.当然,我们首先需要在app.vue中,加入此图片.如下: ...

  8. Vue背景图打包之后访问路径错误

    问题背景:项目里面有用到背景图片,开发模式下正常,打包之后发现报404错误.查看发现是背景图片引用路径出错. 解决方法: .map { width: %; height: 397px; backgro ...

  9. [vue折线图] 记录SpringBoot+Vue3.0折线图订单信息展示

    因公司业务需求,需要做一份订单相关的折线图, 如果其中有一天没有订单的话,这一天就是空缺的,在绘制折线图的时候是不允许的,所有要求把没有订单数据的日期也要在图表显示. 使用技术vue3.0+sprin ...

  10. vue甘特图gantt

    vue做甘特图,先大致介绍下核心功能: (1)横轴.纵轴拖拽: (2)自定义监听点击事件(双击.右键等)(3)任务之间显示父子层级关系:(4)左侧列表信息,右侧时间轴表示任务:(5)每个任务可以订制样 ...

随机推荐

  1. linux内核中的subsys_initcall是干什么的?

    注意:使用的内核源码版本为5.1.3 1. subsys_initcall长什么样子? 它其实是个宏定义,定义如下: #define subsys_initcall(fn)     __define_ ...

  2. Java同步数据结构之Collection-Queue

    概述 接下来开始学习java.util.concurrent包中一些Collection集合的子类,关于Map的一些子类将在这些子类完成之后再开始学习.下图是Java并发包中关于Collection接 ...

  3. 省份-城市-区域三级联动【struts2 + ajax +非数据库版】

    package loaderman; /** * 实体,封装省份和城市 */ public class Bean { private String province;//省份 private Stri ...

  4. BrowserUtils

    import android.content.Context; import android.content.Intent; import android.net.Uri; public class ...

  5. React Native常用的第三方开源库

    记录一下自己暂目前了解和使用的一些开源库和官方文档和优秀博客介绍,希望对你有帮助☺️: 1.Toast: https://github.com/magicismight/react-native-ro ...

  6. playbook部署coredns

    playbook部署coredns 说明test1是主控节点,目的是给test4 node节点安装coredns, 1.coredns-1.2.2.tar.gz安装包放到主控节点/server/sof ...

  7. v-on可以监听多个方法吗?

    原文地址 v-on可以监听多个方法 <template> <div class="about"> <button @click="mycli ...

  8. clrscr()及gotoxy()函数

    1.clrscr() 作用:清屏,跟 cmd 中的清屏作用一样 注意:只有在 Trubo C 中能用,需要包含头文件:conio.h 替代:system("cls"); 需要头文件 ...

  9. Linux配置文件的修改

    在很多时候,我们需要对Linux的配置文件进行修改.此时就涉及到了不同Linux发行版的修改配置问题.下面就以主流的几个操作系统(Unix:Solaris,Linux:Ubuntu,Redhat)作为 ...

  10. 论文阅读 | Adversarial Example Generation with Syntactically Controlled Paraphrase Networks

    [pdf] [code] 句法控制释义网络 SCPNS  生成对抗样本 我们提出了句法控制意译网络(SCPNs),并利用它们来生成对抗性的例子.给定一个句子和一个目标语法形式(例如,一个选区解析),s ...