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 ...
随机推荐
- Oracle伪列(ROWNUM)的使用
先看一个题:查询emp表的信息,显示前5行数据,这时候我们就需要使用伪列(rownum)的概念. rownum在数据表并不是一个真实的列,其实每一行应该都有一个行号,这个伪列就是用来记录这个行号的,这 ...
- css3多個佈局
分欄佈局: column-count:分欄數 column-gap:欄間間距 column-rule:欄間線條 記得消除瀏覽器兼容:-moz-和-webkit- 盒佈局: display:box 彈性 ...
- webBrowser兼容
using Microsoft.Win32; using System; using System.Collections.Generic; using System.ComponentModel; ...
- VueRouter和Vue生命周期(钩子函数)
一.vue-router路由 1.介绍 vue-router是Vue的路由系统,用于定位资源的,在页面不刷新的情况下切换页面内容.类似于a标签,实际上在页面上展示出来的也是a标签,是锚点.router ...
- Java爬取12306余票
一.前言 今年国庆和中秋一起放,虽然很欢快,但是没有票了!!! 于是自己倒腾了一个查询余票的小程序. 二.准备工作 1.先打开12306的页面 2.然后右键检查,点network 3.再点一下1230 ...
- 【XSY3156】简单计数II 容斥 DP
题目大意 定义一个序列的权值为:把所有相邻的相同的数合并为一个集合后,所有集合的大小的乘积. 特别的,第一个数和最后一个数是相邻的. 现在你有 \(n\) 种数,第 \(i\) 种有 \(c_i\) ...
- C#动态操作DataTable(新增行、列、查询行、列等)
public void CreateTable() { //创建表 DataTable dt = new DataTable(); //1.添加列 dt.Columns.Add("Name& ...
- CF1059D Nature Reserve
原题链接 网络不好的可以到洛谷上去QwQ 题目大意 有N个点,求与y=0相切的,包含这N个点的最小圆的半径 输入输出样例 输入: 2 0 1 1 1 输出 0.625 感觉最多是蓝题难度? 首先无解的 ...
- 第四届CCCC团体程序设计天梯赛 后记
一不小心又翻车了,第二次痛失200分 1.开局7分钟A了L2-3,一看榜已经有七个大兄弟排在前面了,翻车 * 1 2.把L1-3 A了18分,留了两分准备抢顽强拼搏奖,最后五秒钟把题过了,万万没想到还 ...
- Subversion配置
1.下载Apache-Subversion-1.9.7:https://github.com/wangfajun/dev-tools 2.打开idea-->File-->Settings, ...