2024-08-27 18:43:24 +08:00

141 lines
3.0 KiB
Vue

<template>
<div class="imgs">
<div class="imgs-bg">
<img :src="qualityImgList[props.nftData.detail.quality].bgImg" alt="">
</div>
<div class="imgs-img">
<img :src="heroImg[props.nftData.name].img" alt="">
</div>
<div class="imgs-lock" v-if="nftData.on_lock == '1'">
Locked
</div>
<div class="imgs-day">
{{ nftData.detail.max_mining_days }}
</div>
<div class="imgs-detail">
<div>
<img src="@/assets/img/marketplace/hero/Value_wealthIcon.png" alt="">
<span>{{ nftData.detail.wealth }}</span>
</div>
<div>
<span>{{ nftData.detail.lucky }}</span>
<img src="@/assets/img/marketplace/hero/Value_luckIcon.png" alt="">
</div>
</div>
<div class="imgs-quality">
<img :src="qualityImgList[props.nftData.detail.quality].qualityImg" alt="">
</div>
<div class="imgs-name">
{{ nftData.name }}
</div>
</div>
</template>
<script setup>
import { ref, computed, toRaw } from "vue"
import { heroImg, qualityImgList } from "@/configs/cenImg"
const props = defineProps({
nftData: {
type: Object,
required: true,
},
});
</script>
<style lang="scss" scoped>
.imgs {
position: relative;
width: 190px;
height: 316px;
margin: 0 auto;
.imgs-bg {
width: 190px;
height: 316px;
}
.imgs-img {
position: absolute;
top: 0;
left: 0;
width: 184px;
height: 273px;
img {
width: 100%;
height: 100%;
}
}
.imgs-lock {
position: absolute;
left: -10px;
bottom: 130px;
width: 200px;
height: 30px;
line-height: 30px;
text-align: center;
font-size: 18px;
font-weight: 700;
background: url('@/assets/img/marketplace/hero_lockBg.png') no-repeat;
background-size: 100% 100%;
}
.imgs-day {
position: absolute;
right: 3px;
bottom: 100px;
width: 76px;
height: 25px;
line-height: 25px;
background: url('@/assets/img/marketplace/hero/hero_card_coinTime.png') no-repeat;
background-size: 100% 100%;
padding-left: 40px;
color: #000;
}
.imgs-detail {
position: absolute;
bottom: 43px;
width: 184px;
height: 30px;
line-height: 30px;
display: flex;
justify-content: space-between;
align-items: center;
color: #000;
background: #333141;
div {
display: flex;
align-items: center;
img {
width: 20px;
height: 20px;
margin: 0 4px;
}
span {
font-family: 'MEurostile';
font-weight: 400;
font-size: 18px;
color: #FFFFFF;
}
}
}
.imgs-quality {
position: absolute;
bottom: 45px;
left: 50%;
transform: translateX(-50%);
width: 50px;
height: 53px;
line-height: 50px;
text-align: center;
color: #000;
}
.imgs-name {
position: absolute;
bottom: 10px;
left: 50%;
transform: translateX(-50%);
font-family: 'Anton';
font-weight: 400;
font-size: 23px;
color: #D9E3FF;
}
}
</style>