<template>
|
|
<view class="card-item flex-colc" :style="{'background-image':`url(${data.bgUrl})`}">
|
|
<!-- <view class="num">
|
|
{{data.methodNum}}
|
|
</view> -->
|
|
<view class="size-30 fw700 mb30" :style="{'color':data.titleColour}">
|
|
{{data.title}}
|
|
</view>
|
|
<view class="color-aea size-22">
|
|
{{data.des}}
|
|
</view>
|
|
<view class="y-input flex-rowc" :style="{background:data.inputBg}" v-if="data.copy">
|
|
<input class="codeInput" type="text" v-model="data.code" />
|
|
<view class="copy flex-rowc size-30" @click="copyHandle(data)">
|
|
复制
|
|
</view>
|
|
</view>
|
|
<view class="btn flex-rowc mt16 " @click="goToShare" v-else>
|
|
保存海报
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script setup>
|
|
import tab from '../../../plugins/tab';
|
|
const {
|
|
data
|
|
} = defineProps({
|
|
data: {
|
|
type: Object,
|
|
default: () => {}
|
|
}
|
|
})
|
|
|
|
const emit = defineEmits(['emitCopy', 'savePoster']);
|
|
|
|
const copyHandle = (data) => {
|
|
uni.setClipboardData({
|
|
data: data.code,
|
|
success: () => {
|
|
uni.showToast({
|
|
title: "复制成功"
|
|
})
|
|
},
|
|
fail: () => {
|
|
uni.showToast({
|
|
title: "复制失败",
|
|
icon: "none"
|
|
})
|
|
}
|
|
})
|
|
}
|
|
|
|
const goToShare = () => {
|
|
emit("savePoster")
|
|
// tab.navigateTo("/otherPages/binding/share/index")
|
|
}
|
|
</script>
|
|
|
|
<style scoped lang="scss">
|
|
.card-item {
|
|
width: 684rpx;
|
|
padding: 106rpx 0 26rpx;
|
|
position: relative;
|
|
border-radius: 16rpx;
|
|
// background-color: #eee;
|
|
margin-bottom: 10rpx;
|
|
background-repeat: no-repeat;
|
|
background-size: 685rpx;
|
|
|
|
.num {
|
|
position: absolute;
|
|
left: 0;
|
|
top: 0;
|
|
color: #FE8165;
|
|
background-color: #FFC6B9;
|
|
padding: 0 12rpx;
|
|
border-radius: 16rpx 0 16rpx 0;
|
|
}
|
|
|
|
.y-input {
|
|
width: 570rpx;
|
|
height: 90rpx;
|
|
background-color: #FDD6CE;
|
|
margin-top: 24rpx;
|
|
border-radius: 16rpx;
|
|
|
|
.codeInput {
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
}
|
|
|
|
.copy {
|
|
width: 109rpx;
|
|
height: 58rpx;
|
|
border-radius: 58rpx;
|
|
border: 2rpx solid #C4867A;
|
|
color: #C4867A;
|
|
}
|
|
}
|
|
|
|
.btn {
|
|
width: 570rpx;
|
|
height: 90rpx;
|
|
border: 2rpx solid #587CA1;
|
|
color: #587CA1;
|
|
border-radius: 90rpx;
|
|
}
|
|
}
|
|
</style>
|