42 changed files with 1869 additions and 1809 deletions
@ -1,194 +0,0 @@ |
|||
<template> |
|||
<view class="uni-load-more"> |
|||
<view class="uni-load-more__img" v-show="status === 'loading' && showIcon"> |
|||
<view class="load1"> |
|||
<view :style="{background:color}"></view> |
|||
<view :style="{background:color}"></view> |
|||
<view :style="{background:color}"></view> |
|||
<view :style="{background:color}"></view> |
|||
</view> |
|||
<view class="load2"> |
|||
<view :style="{background:color}"></view> |
|||
<view :style="{background:color}"></view> |
|||
<view :style="{background:color}"></view> |
|||
<view :style="{background:color}"></view> |
|||
</view> |
|||
<view class="load3"> |
|||
<view :style="{background:color}"></view> |
|||
<view :style="{background:color}"></view> |
|||
<view :style="{background:color}"></view> |
|||
<view :style="{background:color}"></view> |
|||
</view> |
|||
</view> |
|||
<text class="uni-load-more__text" :style="{color:color}">{{status === 'more' ? contentText.contentdown : (status === 'loading' ? contentText.contentrefresh : contentText.contentnomore)}}</text> |
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
export default { |
|||
name: "uni-load-more", |
|||
props: { |
|||
status: { |
|||
//上拉的状态:more-loading前;loading-loading中;noMore-没有更多了 |
|||
type: String, |
|||
default: 'more' |
|||
}, |
|||
showIcon: { |
|||
type: Boolean, |
|||
default: true |
|||
}, |
|||
color: { |
|||
type: String, |
|||
default: "#777777" |
|||
}, |
|||
contentText: { |
|||
type: Object, |
|||
default () { |
|||
return { |
|||
contentdown: "上拉显示更多", |
|||
contentrefresh: "正在加载...", |
|||
contentnomore: "没有更多数据了" |
|||
}; |
|||
} |
|||
} |
|||
}, |
|||
data() { |
|||
return {} |
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style> |
|||
@charset "UTF-8"; |
|||
|
|||
.uni-load-more { |
|||
display: flex; |
|||
flex-direction: row; |
|||
height: 80upx; |
|||
align-items: center; |
|||
justify-content: center |
|||
} |
|||
|
|||
.uni-load-more__text { |
|||
font-size: 28upx; |
|||
color: #999 |
|||
} |
|||
|
|||
.uni-load-more__img { |
|||
height: 24px; |
|||
width: 24px; |
|||
margin-right: 10px |
|||
} |
|||
|
|||
.uni-load-more__img>view { |
|||
position: absolute |
|||
} |
|||
|
|||
.uni-load-more__img>view view { |
|||
width: 6px; |
|||
height: 2px; |
|||
border-top-left-radius: 1px; |
|||
border-bottom-left-radius: 1px; |
|||
background: #999; |
|||
position: absolute; |
|||
opacity: .2; |
|||
transform-origin: 50%; |
|||
animation: load 1.56s ease infinite |
|||
} |
|||
|
|||
.uni-load-more__img>view view:nth-child(1) { |
|||
transform: rotate(90deg); |
|||
top: 2px; |
|||
left: 9px |
|||
} |
|||
|
|||
.uni-load-more__img>view view:nth-child(2) { |
|||
transform: rotate(180deg); |
|||
top: 11px; |
|||
right: 0 |
|||
} |
|||
|
|||
.uni-load-more__img>view view:nth-child(3) { |
|||
transform: rotate(270deg); |
|||
bottom: 2px; |
|||
left: 9px |
|||
} |
|||
|
|||
.uni-load-more__img>view view:nth-child(4) { |
|||
top: 11px; |
|||
left: 0 |
|||
} |
|||
|
|||
.load1, |
|||
.load2, |
|||
.load3 { |
|||
height: 24px; |
|||
width: 24px |
|||
} |
|||
|
|||
.load2 { |
|||
transform: rotate(30deg) |
|||
} |
|||
|
|||
.load3 { |
|||
transform: rotate(60deg) |
|||
} |
|||
|
|||
.load1 view:nth-child(1) { |
|||
animation-delay: 0s |
|||
} |
|||
|
|||
.load2 view:nth-child(1) { |
|||
animation-delay: .13s |
|||
} |
|||
|
|||
.load3 view:nth-child(1) { |
|||
animation-delay: .26s |
|||
} |
|||
|
|||
.load1 view:nth-child(2) { |
|||
animation-delay: .39s |
|||
} |
|||
|
|||
.load2 view:nth-child(2) { |
|||
animation-delay: .52s |
|||
} |
|||
|
|||
.load3 view:nth-child(2) { |
|||
animation-delay: .65s |
|||
} |
|||
|
|||
.load1 view:nth-child(3) { |
|||
animation-delay: .78s |
|||
} |
|||
|
|||
.load2 view:nth-child(3) { |
|||
animation-delay: .91s |
|||
} |
|||
|
|||
.load3 view:nth-child(3) { |
|||
animation-delay: 1.04s |
|||
} |
|||
|
|||
.load1 view:nth-child(4) { |
|||
animation-delay: 1.17s |
|||
} |
|||
|
|||
.load2 view:nth-child(4) { |
|||
animation-delay: 1.3s |
|||
} |
|||
|
|||
.load3 view:nth-child(4) { |
|||
animation-delay: 1.43s |
|||
} |
|||
|
|||
@-webkit-keyframes load { |
|||
0% { |
|||
opacity: 1 |
|||
} |
|||
|
|||
100% { |
|||
opacity: .2 |
|||
} |
|||
} |
|||
</style> |
File diff suppressed because it is too large
File diff suppressed because it is too large
Loading…
Reference in new issue