2023-01-11 16:33:13 +08:00
|
|
|
<template>
|
2023-02-06 13:34:15 +08:00
|
|
|
<view class="Cn-page" :class="{ 'no-padding': noPadding }">
|
2023-01-11 16:33:13 +08:00
|
|
|
<template v-if="showLoginMsk && !login">
|
2023-01-13 16:32:56 +08:00
|
|
|
<navigator url="/pages/user/login" hover-class="none" class="page-login-btn">登录</navigator>
|
2023-01-11 16:33:13 +08:00
|
|
|
</template>
|
|
|
|
|
<template v-else>
|
|
|
|
|
<view class="loading" v-if="loading">
|
|
|
|
|
<zero-loading v-if="loading"></zero-loading>
|
|
|
|
|
</view>
|
|
|
|
|
<template v-else>
|
|
|
|
|
<slot name="body"></slot>
|
|
|
|
|
</template>
|
|
|
|
|
</template>
|
|
|
|
|
</view>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script >
|
|
|
|
|
export default {
|
|
|
|
|
name: 'Cn-page',
|
|
|
|
|
props: {
|
|
|
|
|
loading: {
|
|
|
|
|
type: Boolean,
|
|
|
|
|
default: false
|
|
|
|
|
},
|
|
|
|
|
showLoginMsk: Boolean,
|
2023-02-06 13:34:15 +08:00
|
|
|
noPadding: Boolean,
|
2023-01-11 16:33:13 +08:00
|
|
|
},
|
2023-02-06 13:34:15 +08:00
|
|
|
data () {
|
2023-01-11 16:33:13 +08:00
|
|
|
return {
|
|
|
|
|
login: false,
|
|
|
|
|
}
|
|
|
|
|
},
|
2023-02-06 13:34:15 +08:00
|
|
|
created () {
|
2023-01-11 16:33:13 +08:00
|
|
|
this.login = uni.getStorageSync('Authorization')
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<style lang='scss'>
|
|
|
|
|
.Cn-page {
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
padding-bottom: calc(30rpx + env(safe-area-inset-bottom));
|
|
|
|
|
}
|
2023-02-06 13:34:15 +08:00
|
|
|
|
|
|
|
|
.no-padding {
|
|
|
|
|
padding-bottom: 0;
|
|
|
|
|
}
|
|
|
|
|
|
2023-01-11 16:33:13 +08:00
|
|
|
.page-login-btn {
|
|
|
|
|
position: fixed;
|
|
|
|
|
top: 50%;
|
|
|
|
|
left: 50%;
|
|
|
|
|
transform: translate(-50%, -50%);
|
|
|
|
|
height: 80rpx;
|
|
|
|
|
width: 200rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
background: #449dff;
|
|
|
|
|
color: #fff;
|
|
|
|
|
border-radius: 4rpx;
|
|
|
|
|
}
|
|
|
|
|
</style>
|