perry-mall/components/containers/container-subgroup.vue

91 lines
2.4 KiB
Vue

<template>
<view>
<view v-if="loading" class="container-loading">
<view class="loading-box">
<span></span>
<span></span>
<span></span>
<span></span>
</view>
</view>
<view v-else :style="{paddingTop: statusBarHeight +'px'}" class="pad-zy30">
<slot name="content"></slot>
</view>
</view>
</template>
<script>
export default {
name:"container-subgroup",
data() {
return {
statusBarHeight:uni.getSystemInfoSync().statusBarHeight + 50,
loading:true,
exist:''
};
},
// 执行顺序 第一
beforeCreate(){
// 检测是否登录过期或是否登录
if(uni.getStorageSync('phone_active')){
this.$toolAll.tools.overdue();
}
this.exist = uni.getStorageSync('token');
this.exist ? this.loading = false : this.loading = true;
},
// 执行顺序 第二
created(){
},
// 执行顺序 第三
beforeMount(){
},
// 执行顺序 第四
mounted(){
setTimeout(()=>{
this.loading = false;
},500)
},
// 组件更新前
beforeUpdate(){
},
// 组件更新后
updated(){
},
// 组件销毁前:实例销毁之前调用。在这一步,实例仍然完全可用
beforeDestroy(){
},
// 销毁所有实例
destroyed(){
}
}
</script>
<style scoped>
.container-loading {position: fixed;top: 0;left: 0;bottom: 0;right: 0;display: flex;justify-content: center;align-items: center;}
.container-loading .loading-box {width: 80rpx;display: flex;flex-wrap: wrap;animation: rotate 3s linear infinite;}
@keyframes rotate{
to{transform: rotateZ(360deg);}
}
.container-loading .loading-box span {width: 32rpx;height: 32rpx;background-color: #000000;margin: 4rpx;animation: scale 1.5s linear infinite;}
@keyframes scale{
50%{transform: scale(1);}
}
.container-loading .loading-box span:nth-child(1){border-radius: 50% 50% 0 50%;transform-origin: bottom right;}
.container-loading .loading-box span:nth-child(2){border-radius: 50% 50% 50% 0;transform-origin: bottom left;animation-delay: .5s;}
.container-loading .loading-box span:nth-child(3){border-radius: 50% 0 50% 50%;transform-origin: top right;animation-delay: 1.5s;}
.container-loading .loading-box span:nth-child(4){border-radius: 0 50% 50% 50%;transform-origin: top left;animation-delay: 1s;}
scroll-view ::-webkit-scrollbar {
display: none !important;
width: 0 !important;
height: 0 !important;
-webkit-appearance: none;
background: transparent;
}
</style>