70 lines
1.7 KiB
Vue
70 lines
1.7 KiB
Vue
<template>
|
|
<view class="inspection-section">
|
|
<view class="inspection-title">巡检总览</view>
|
|
<view class="inspection-grid">
|
|
<view class="inspection-item" v-for="item in inspectionList" :key="item.label">
|
|
<view class="inspection-item-left">
|
|
<text class="inspection-item-label">{{ item.label }}</text>
|
|
<text class="inspection-item-num">{{ item.value }}个</text>
|
|
</view>
|
|
<view class="inspection-item-right">
|
|
<image class="inspection-icon" :src="item.icon" mode="aspectFit" />
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script setup>
|
|
defineProps({
|
|
inspectionList: { type: Array, default: () => [] }
|
|
})
|
|
</script>
|
|
|
|
<style scoped lang="scss">
|
|
.inspection-section {
|
|
margin: 20rpx 0;
|
|
|
|
.inspection-title {
|
|
font-size: 32rpx;
|
|
font-weight: 600;
|
|
color: #222;
|
|
margin-bottom: 20rpx;
|
|
}
|
|
|
|
.inspection-grid {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 20rpx;
|
|
|
|
.inspection-item {
|
|
width: calc(50% - 10rpx);
|
|
background: #fff;
|
|
border-radius: 8rpx;
|
|
padding: 30rpx 24rpx;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
box-sizing: border-box;
|
|
|
|
.inspection-item-left {
|
|
display: flex;
|
|
flex-direction: column;
|
|
.inspection-item-label { font-size: 28rpx; color: #666; margin-bottom: 6rpx; }
|
|
.inspection-item-num { font-size: 32rpx; color: #333; font-weight: 600; }
|
|
}
|
|
|
|
.inspection-item-right {
|
|
width: 64rpx;
|
|
height: 64rpx;
|
|
flex-shrink: 0;
|
|
.inspection-icon {
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
</style>
|