vue——loading组件
<template>
<div class="loading" :style="{height:loadingRadiusVal+'px',width:loadingRadiusVal+'px'}">
<div v-for="(dotNum, index) in dotNums" :key="index" :style="dotTransform(index, dotNums)">
<span :style="dotAimation(index, dotNums)"></span>
</div>
</div>
</template>
js
<script>
export default{
props:{
loadingRadiusVal: { type: Number, default: 100 },
dotRadiusVal: { type: Number, default: 20 },
dotColorVal: { type: String, default: '#f00' },
dotNums: { type: Number, default: 10 }
},
data(){
return{ }
},
methods:{
dotTransform(idx,dotNums){
let rad = 2 * Math.PI / dotNums * idx;
let dotX = Math.cos(rad) * (this.loadingRadiusVal / 2);
let dotY = Math.sin(rad) * (this.loadingRadiusVal / 2);
return { transform: `translate(${dotX}px,${dotY}px)`,height: this.dotRadiusVal+'px',width:this.dotRadiusVal+'px'};
},
dotAimation(idx,dotNums){
let delayTime = `${-1*(1+idx)*1/dotNums}s`;
return{
animationDelay:delayTime,
background:this.dotColorVal
}
}
}
}
</script>
css
<style>
div.loading{
position: relative;
margin: 0 auto;
font-size:;
border-radius: 50%;
transform-origin: 50%;
}
div.loading div{
position: absolute;
top: 50%;
left: 50%;
border-radius: 100%;
}
span{
display: block;
border-radius: 50%;
width: 100%;
height: 100%;
animation: ball 1s infinite ease-in-out;
}
@keyframes ball{
0%{
opacity:;
transform: scale(1);
}
20%{
opacity:;
}
80%{
opacity:;
transform: scale(0);
}
}
</style>
vue——loading组件的更多相关文章
- vue loading组件
<!-- * * loadingGif组件--"数据请求中" * * 使用方法: * <loading-gif :show-loading="showLoad ...
- VUE移动端音乐APP学习【四】:scroll组件及loading组件开发
scroll组件 制作scroll 组件,然后嵌套一个 DOM 节点,使得该节点就能够滚动.该组件中需要引入 BetterScroll 插件. scroll.vue: <template> ...
- Vue 封装的loading组件
<template> <div class="loadEffect"> <span></span> <span>< ...
- 浅尝Vue.js组件(二)
本篇目录: 插槽(Slot) 插槽内容 作用域 具名插槽 作用域插槽 独占默认插槽的缩写语法 解构插槽Prop 使用场景举例 动态插槽名 具名插槽缩写 动态组件&keep-alive 异步组件 ...
- 自定义vue全局组件use使用
自定义一个全局Loading组件,并使用:总结目录:|-components |-loading |-index.js 导出组件,并且install |-loading.vue 定义Loading组件 ...
- vue封装组件的正确方式-封装类似elementui的组件
最近读了下element的源码,仿照他封装了两种不同的组件. 第一种:通过组件来调用显示的 <template> <!--src/component/custom/main.vue- ...
- 自定义vue全局组件use使用(解释vue.use()的原理)
我们在前面学习到是用别人的组件:Vue.use(VueRouter).Vue.use(Mint)等等.其实使用的这些都是全剧组件,这里我们就来讲解一下怎么样定义一个全局组件,并解释vue.use()的 ...
- vue2.0 仿手机新闻站(五)全局的 loading 组件
1.组件结构 index.js const LoadingComponent = require('./Loading.vue') const loading = { install: functio ...
- [Loading Component]Loading组件的v-model设计是否不合理?
vue在2.4.2版本中给computed里的属性加了限制,详见assigning to a computed property without setter does not fail 项目将vue ...
随机推荐
- linux系统安装redis
redis的下载安装教程 1.进入到linux指定目录中 cd /usr/local 路径看你自己情况 2.下载redis,执行如下命令: wget http://download.re ...
- 第二章· Redis管理实战
数据类型 管理实战 数据类型 String: 字符串类型 Hash: 哈希类型 List: 列表类型 Set: 集合类型 Sorted set: 顺序集合类型 管理实战 通用操作
- CodeForces 140C New Year Snowm
题目链接:http://codeforces.com/contest/140/problem/C 题目大意: 有n个雪球(半径为:r1,r2,r3.....rn):一个雪人要三个雪球.但是要求半径两两 ...
- springcloud
基本术语 1.服务器 服务器:是提供计算服务的设备.由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力.服务器的构成:包括处理器.硬盘.内存.系统总线等,和通用 ...
- springboot 出现 Connection refused: connect
总结网上的方法再结合我自己的方法 1. springCloud com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectEx ...
- spring和mybatis的整合配置
参考自: http://www.cnblogs.com/wangmingshun/p/5674633.html 链接中的文章里一共有三种整合方式,太多了怕记混了. 我这里只保留第二种. spring中 ...
- DAY12、装饰器
一.补充:nonlocal关键字 1.作用:将L与E(E中的名字需要提前定义)的名字统一 2.应用场景:如果想在被嵌套的函数中修改外部函数变量(名字)的值 3.案例: def outer(): ...
- Python——日志模块(logging)
一.日志说明 日志是跟踪软件运行时所发生的事件的一种方法.软件开发者在代码中调用日志函数,表明发生了特定的事件.事件由描述性消息描述,该描述性消息可以可选地包含可变数据(即,对于事件的每次出现都潜在地 ...
- vue 自定义指令的使用案例
参考资料: 1. vue 自定义指令: 2. vue 自定义指令实现 v-loading: v-loading,是 element-ui 组件库中的一个用于数据加载过程中的过渡动画指令,项目中也很少需 ...
- Flask插件wtforms、Flask文件上传和Echarts柱状图
一.wtforms 类比Django的Form组件Form组件的主要应用是帮助我们自动生成HTML代码和做一些表单数据的验证 flask的wtforms用法跟Form组件大同小异参考文章:https: ...