Commit e471aeba authored by xinzhedeai's avatar xinzhedeai

fix:消费者建议详情 脱敏

parent 2c8c5158
......@@ -106,4 +106,12 @@
color: #737373;
}
/* 图标样式优化 */
.van-icon-closed-eye, .van-icon-eye-o {
font-size: 16px;
transition: color 0.2s;
position: absolute;
right: 0.5rem;
}
\ No newline at end of file
......@@ -55,14 +55,28 @@
</div>
<div class="form-item">
<span class="form-label">联系人</span>
<div class="form-input-wrap">
<p class="form-content">{{formData.contactName}}</p>
<div class="form-input-wrap" style="display: flex; align-items: center;">
<span class="form-content" style="line-height: .7rem;">
{{ showOriginal.contactName ? formData.contactName : desensitize(formData.contactName, 'name') }}
</span>
<van-icon
:name="showOriginal.contactName ? 'eye-o' : 'closed-eye'"
@click="toggleShow('contactName')"
style="margin-left: 8px; color: #1989fa; cursor: pointer;"
/>
</div>
</div>
<div class="form-item">
<span class="form-label">联系方式</span>
<div class="form-input-wrap">
<p class="form-content">{{formData.contactDetails}}</p>
<div class="form-input-wrap" style="display: flex; align-items: center;">
<span class="form-content" style="line-height: .7rem;">
{{ showOriginal.contactDetails ? formData.contactDetails : desensitize(formData.contactDetails, 'phone') }}
</span>
<van-icon
:name="showOriginal.contactDetails ? 'eye-o' : 'closed-eye'"
@click="toggleShow('contactDetails')"
style="margin-left: 8px; color: #1989fa; cursor: pointer;"
/>
</div>
</div>
</div>
......
......@@ -8,6 +8,11 @@ window.addEventListener('load', function () {
return {
formData: {
},
// 添加显示状态管理对象
showOriginal: {
contactName: false,
contactDetails: false
}
}
},
computed: {},
......@@ -15,6 +20,22 @@ window.addEventListener('load', function () {
this.detail()
},
methods: {
// 添加脱敏处理函数
desensitize(value, type) {
if (!value) return '';
switch(type) {
case 'name': // 姓名脱敏:保留姓氏
return value.length > 1 ? value.charAt(0) + '*'.repeat(value.length - 1) : value;
case 'phone': // 手机号脱敏:保留前3后4
return value.replace(/^(\d{3})\d{4}(\d{4})$/, '$1****$2');
default:
return value;
}
},
// 添加显示切换方法
toggleShow(field) {
this.$set(this.showOriginal, field, !this.showOriginal[field]);
},
detail() {
vant.Toast.loading({
message: '正在加载...',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment