67 lines
1.0 KiB
Vue
67 lines
1.0 KiB
Vue
![]() |
<!--
|
|||
|
@name: 空状态组件
|
|||
|
@author: kahu4
|
|||
|
@date: 2023-10-30 16:47
|
|||
|
@description:index
|
|||
|
@update: 2023-10-30 16:47
|
|||
|
-->
|
|||
|
<script setup>
|
|||
|
import { toRefs } from "vue";
|
|||
|
|
|||
|
const props = defineProps({
|
|||
|
iconSrc: {},
|
|||
|
padding: {
|
|||
|
type: String,
|
|||
|
default: () => '260rpx 0 0 0'
|
|||
|
}
|
|||
|
})
|
|||
|
|
|||
|
const {iconSrc, padding} = toRefs(props)
|
|||
|
|
|||
|
</script>
|
|||
|
|
|||
|
<template>
|
|||
|
<view
|
|||
|
class="empty-container"
|
|||
|
:style="{padding}"
|
|||
|
>
|
|||
|
<view class="icon-box">
|
|||
|
<slot name="icon">
|
|||
|
<image :src="iconSrc" />
|
|||
|
</slot>
|
|||
|
</view>
|
|||
|
<view class="info-row">
|
|||
|
<slot>空空如也~</slot>
|
|||
|
</view>
|
|||
|
<view class="bottom-row">
|
|||
|
<slot name="bottom"></slot>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
</template>
|
|||
|
|
|||
|
<style
|
|||
|
scoped
|
|||
|
lang="scss"
|
|||
|
>
|
|||
|
.empty-container {
|
|||
|
display: flex;
|
|||
|
align-items: center;
|
|||
|
justify-content: center;
|
|||
|
flex-direction: column;
|
|||
|
padding-top: 260rpx;
|
|||
|
|
|||
|
.icon-box {
|
|||
|
image {
|
|||
|
width: 170rpx;
|
|||
|
height: 170rpx;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
.info-row {
|
|||
|
padding: 20rpx 0 30rpx 0;
|
|||
|
font-size: 28rpx;
|
|||
|
color: #333333;
|
|||
|
}
|
|||
|
}
|
|||
|
</style>
|