111 lines
2.3 KiB
Vue
111 lines
2.3 KiB
Vue
<template>
|
||
<div class="info-container">
|
||
<template v-for="(item, index) in data" :key="index">
|
||
<div v-if="item?.dkKsSj" class="item">
|
||
<div class="point"></div>
|
||
<div class="line" v-if="index + 1 != data.length"></div>
|
||
<div class="info-right">
|
||
<div class="name">{{ `第${item?.count}次打卡` }}</div>
|
||
<div class="time">打卡时间:<text>{{ item?.dkKsSj }}</text></div>
|
||
|
||
<div v-if="item?.imgUrl" class="image">
|
||
<van-image width="80px" :src="item?.imgUrl" @click="onClickImg(item?.imgUrl)" style="flex: 1">
|
||
<template v-slot:loading>
|
||
<van-loading type="spinner" size="20" />
|
||
</template>
|
||
</van-image>
|
||
</div>
|
||
|
||
<!-- <div class="address">-->
|
||
<!-- <van-icon name="location-o" color="#1DB1FF" />-->
|
||
<!-- <div class="name">四川省成都市</div>-->
|
||
<!-- </div>-->
|
||
</div>
|
||
</div>
|
||
</template>
|
||
</div>
|
||
</template>
|
||
|
||
<script setup>
|
||
import {ImagePreview} from "vant";
|
||
|
||
const props = defineProps({
|
||
data: {
|
||
type: Array,
|
||
default: []
|
||
}
|
||
})
|
||
|
||
//预览图片
|
||
function onClickImg(url) {
|
||
ImagePreview([url]);
|
||
}
|
||
</script>
|
||
|
||
<style lang="scss" scoped>
|
||
.info-container {
|
||
padding: 0 2.67vw;
|
||
margin-top: 4vw;
|
||
|
||
.item {
|
||
color: #666;
|
||
display: flex;
|
||
align-content: center;
|
||
position: relative;
|
||
height: auto;
|
||
border-left: 0.53vw dashed #1DB1FF;
|
||
max-height: 46.93vw;
|
||
padding-bottom: 2.67vw;
|
||
|
||
.point {
|
||
position: absolute;
|
||
width: 3.2vw;
|
||
height: 3.2vw;
|
||
background: #1DB1FF;
|
||
border-radius: 50%;
|
||
flex-shrink: 0;
|
||
left: -1.665vw;
|
||
}
|
||
|
||
.info-right {
|
||
margin-left: 5.33vw;
|
||
font-family: PingFang HK, PingFang HK;
|
||
.name {
|
||
font-weight: 400;
|
||
font-size: 3.73vw;
|
||
color: #707070;
|
||
}
|
||
|
||
.image {
|
||
margin-top: 2.13vw;
|
||
width: 33.87vw;
|
||
height: 18.67vw;
|
||
}
|
||
|
||
.time {
|
||
margin-top: 2.13vw;
|
||
|
||
text {
|
||
color: #0386FB;
|
||
}
|
||
}
|
||
|
||
.address {
|
||
margin-top: 2.13vw;
|
||
display: flex;
|
||
align-items: center;
|
||
color: #75787F;
|
||
|
||
div {
|
||
font-size: 2.67vw;
|
||
}
|
||
|
||
.name {
|
||
margin-left: 1.33vw;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
</style>
|