You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

133 lines
2.8 KiB

<template>
<view class="invitation-container">
<view class="qr-code-section">
<view class="qr-code-bg">
<image class="bg-image" src="/static/images/微信图片_20250806143327_219.jpg" mode="aspectFill"/>
<view class="qr-code-content">
<view class="title">我的邀请码</view>
<!-- <view class="code">123456</view>-->
<view class="qr-code">
<u-image width="150px" height="150px" :src="qrCodeUrl"></u-image>
</view>
</view>
</view>
</view>
<view class="share-section">
<view class="flex-1 mx-15">
<u-button type="success" @click="handleShare">保存海报</u-button>
</view>
<view class="flex-1 mx-15">
<u-button type="primary" @click="handleShare">分享给好友</u-button>
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
qrCodeUrl: '/static/images/qr-code.png', // 需要替换为实际的二维码图片
invitedList: [],
levelList: ['一级', '二级']
}
},
methods: {
handleShare() {
uni.showShareMenu({
withShareTicket: true,
menus: ['shareAppMessage', 'shareTimeline']
})
}
},
onLoad() {
// TODO: 获取邀请列表数据
}
}
</script>
<style lang="scss" scoped>
.invitation-container {
//padding: 20px;
.qr-code-section {
text-align: center;
margin-bottom: 30px;
.qr-code-bg {
width: 100%;
height: 90vh;
position: relative;
//border-radius: 15px;
overflow: hidden;
display: flex;
justify-content: center;
align-items: center;
.bg-image {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
z-index: 1;
}
.qr-code-content {
position: relative;
z-index: 2;
background: rgba(255, 255, 255, 0.9);
padding: 30px;
border-radius: 10px;
.title {
font-size: 16px;
margin-bottom: 10px;
color: #333;
}
.code {
font-size: 24px;
font-weight: bold;
margin-bottom: 20px;
color: #007aff;
}
.qr-code {
display: flex;
justify-content: center;
padding: 10px;
background: white;
border-radius: 8px;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}
}
}
}
.share-section {
margin-bottom: 30px;
display: flex;
align-items: center;
justify-content: center;
}
.invitation-list {
padding: 20rpx;
.title {
font-size: 16px;
margin-bottom: 15px;
}
.list-item {
display: flex;
justify-content: space-between;
padding: 10px 0;
border-bottom: 1px solid #eee;
}
}
}
</style>