216 lines
4.6 KiB
Vue
216 lines
4.6 KiB
Vue
|
|
<template>
|
|||
|
|
<div class="app-page">
|
|||
|
|
<!-- 个人信息部分 -->
|
|||
|
|
<div class="profile">
|
|||
|
|
<!-- 头像 -->
|
|||
|
|
<div class="avatar">
|
|||
|
|
<img src="https://img.yidaima.cn/%E5%A4%B4%E5%83%8F/9b889964f97e4d0c8f52f7b9ec0d04da.jpg" alt="Avatar" class="avatar-img">
|
|||
|
|
</div>
|
|||
|
|
<!-- 昵称 -->
|
|||
|
|
<div class="nickname">Nan Yin</div>
|
|||
|
|
<!-- 个人简介 -->
|
|||
|
|
<div class="bio">如果爱意难平,那就把它藏在心底吧!</div>
|
|||
|
|
</div>
|
|||
|
|
<!-- 联系人部分 -->
|
|||
|
|
<div class="contact">
|
|||
|
|
<!-- 循环渲染联系人列表 -->
|
|||
|
|
<div class="item" v-for="item in contacts" :key="item.id"
|
|||
|
|
@click="copyInfo(item.info, item.name, item.name1, item.id)">
|
|||
|
|
<!-- 联系人条目 -->
|
|||
|
|
<div class="icon-info">
|
|||
|
|
<!-- 自定义图标 -->
|
|||
|
|
<img :src="item.icon" alt="Custom Icon" class="custom-icon">
|
|||
|
|
<!-- 联系人名称 -->
|
|||
|
|
<div class="name">{{ item.name }}</div>
|
|||
|
|
<!-- 联系人名称 -->
|
|||
|
|
<div class="name1">{{ item.name1 }}</div>
|
|||
|
|
<!-- 联系人信息 -->
|
|||
|
|
<div class="info">{{ item.info }}</div>
|
|||
|
|
<div v-if="item.id ==1 || item.id ==2" class="copy"><text class="cuIcon-qrcode"></text></div>
|
|||
|
|
<div v-if="item.id ==3 || item.id ==4" class="copy"><text class="cuIcon-copy"></text></div>
|
|||
|
|
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<!--弹窗-->
|
|||
|
|
<view class="cu-modal" :class="modalName=='Modal'?'show':''">
|
|||
|
|
<view style="border-radius: 30rpx; background-color: white;" class="cu-dialog">
|
|||
|
|
<view class="cu-bar bg-white justify-end">
|
|||
|
|
<view style="color: black;font-size: 38rpx;margin-top: 40rpx;" class="content">{{modelTip}}</view>
|
|||
|
|
<view class="action" @tap="modalName = null">
|
|||
|
|
<text class="cuIcon-close text-red"></text>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<view class=" bg-white">
|
|||
|
|
<image style="width: 75%;" mode="widthFix" show-menu-by-longpress="true"
|
|||
|
|
:src="modelSrc"></image>
|
|||
|
|
<view class="tipinfo">Tip:长按图片识别 / 保存</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</div>
|
|||
|
|
</template>
|
|||
|
|
|
|||
|
|
<script>
|
|||
|
|
export default {
|
|||
|
|
data() {
|
|||
|
|
return {
|
|||
|
|
modelSrc:"",
|
|||
|
|
modelTip:"",
|
|||
|
|
contacts: [{
|
|||
|
|
id: 1,
|
|||
|
|
icon: "http://cun.mywl.top/mybk/xtb/qq.png",
|
|||
|
|
name: "企鹅",
|
|||
|
|
name1: ":",
|
|||
|
|
info: "594458910"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
id: 2,
|
|||
|
|
icon: "http://cun.mywl.top/mybk/xtb/wechat.png",
|
|||
|
|
name: "微信",
|
|||
|
|
name1: ":",
|
|||
|
|
info: "forfeastcoding"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
id: 3,
|
|||
|
|
icon: "http://cun.mywl.top/mybk/xtb/email.png",
|
|||
|
|
name: "邮箱",
|
|||
|
|
name1: ":",
|
|||
|
|
info: "594458910@qq.com"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
id: 4,
|
|||
|
|
icon: "http://cun.mywl.top/mybk/xtb/blog.png",
|
|||
|
|
name: "博客",
|
|||
|
|
name1: ":",
|
|||
|
|
info: "http://www.yidaima.cn/"
|
|||
|
|
},
|
|||
|
|
],
|
|||
|
|
modalName: null
|
|||
|
|
};
|
|||
|
|
},
|
|||
|
|
methods: {
|
|||
|
|
copyInfo(info, name, name1, id) {
|
|||
|
|
if(id == 1){
|
|||
|
|
this.modelTip = "我的企鹅码"
|
|||
|
|
this.modelSrc = "https://img.yidaima.cn/feast/qq_qrcode.jpg"
|
|||
|
|
this.modalName = "Modal"
|
|||
|
|
}else if(id == 2){
|
|||
|
|
this.modelTip = "我的微信码"
|
|||
|
|
this.modelSrc = "https://img.yidaima.cn/feast/wx_qrcode.jpg"
|
|||
|
|
this.modalName = "Modal"
|
|||
|
|
}
|
|||
|
|
uni.setClipboardData({
|
|||
|
|
data: info,
|
|||
|
|
success() {
|
|||
|
|
uni.showToast({
|
|||
|
|
title: `${name}已复制`,
|
|||
|
|
icon: 'success'
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
</script>
|
|||
|
|
|
|||
|
|
<style scoped>
|
|||
|
|
.tipinfo {
|
|||
|
|
width: 60%;
|
|||
|
|
height: 80rpx;
|
|||
|
|
border-radius: 60rpx;
|
|||
|
|
text-align: center;
|
|||
|
|
/* border: 3rpx solid #ae67d6; */
|
|||
|
|
margin-left: 20%;
|
|||
|
|
line-height: 80rpx;
|
|||
|
|
margin-bottom: 40rpx;
|
|||
|
|
color: #ae67d6;
|
|||
|
|
font-size: 30rpx;
|
|||
|
|
font-weight: 600;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.app-page {
|
|||
|
|
width: 100vw;
|
|||
|
|
min-height: 100vh;
|
|||
|
|
box-sizing: border-box;
|
|||
|
|
padding-top: 0rpx;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.profile {
|
|||
|
|
display: flex;
|
|||
|
|
flex-direction: column;
|
|||
|
|
align-items: center;
|
|||
|
|
background-image: url('https://v2.api-m.com/api/wallpaper?return=302');
|
|||
|
|
background-size: cover;
|
|||
|
|
background-position: center;
|
|||
|
|
height: 33vh;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.avatar {
|
|||
|
|
width: 100px;
|
|||
|
|
height: 100px;
|
|||
|
|
position: relative;
|
|||
|
|
box-sizing: border-box;
|
|||
|
|
border-radius: 50%;
|
|||
|
|
border: 1px solid #fff;
|
|||
|
|
box-shadow: 0 2px 24px rgba(0, 0, 0, 0.07);
|
|||
|
|
overflow: hidden;
|
|||
|
|
position: relative;
|
|||
|
|
top: 55px;
|
|||
|
|
left: 0px;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.avatar-img {
|
|||
|
|
width: 100%;
|
|||
|
|
height: 100%;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.nickname {
|
|||
|
|
font-size: 20px;
|
|||
|
|
position: relative;
|
|||
|
|
top: 60px;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bio {
|
|||
|
|
margin-top: 10px;
|
|||
|
|
position: relative;
|
|||
|
|
top: 62px;
|
|||
|
|
font-size: 16px;
|
|||
|
|
color: #666;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.contact {
|
|||
|
|
border-top: 2px solid #f2f2f2;
|
|||
|
|
padding: 20px;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.item {
|
|||
|
|
border-radius: 12px;
|
|||
|
|
background-color: #fafafa;
|
|||
|
|
padding: 16px;
|
|||
|
|
margin-bottom: 10px;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.icon-info {
|
|||
|
|
display: flex;
|
|||
|
|
align-items: center;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.custom-icon {
|
|||
|
|
width: 30px;
|
|||
|
|
height: 30px;
|
|||
|
|
margin-right: 10px;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.name,
|
|||
|
|
.name1,
|
|||
|
|
.info {
|
|||
|
|
margin-right: 5px;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.copy {
|
|||
|
|
margin-left: auto;
|
|||
|
|
color: #1E90FF;
|
|||
|
|
}
|
|||
|
|
</style>
|