Commit e471aeba authored by xinzhedeai's avatar xinzhedeai

fix:消费者建议详情 脱敏

parent 2c8c5158
...@@ -107,3 +107,11 @@ ...@@ -107,3 +107,11 @@
} }
/* 图标样式优化 */
.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 @@ ...@@ -55,14 +55,28 @@
</div> </div>
<div class="form-item"> <div class="form-item">
<span class="form-label">联系人</span> <span class="form-label">联系人</span>
<div class="form-input-wrap"> <div class="form-input-wrap" style="display: flex; align-items: center;">
<p class="form-content">{{formData.contactName}}</p> <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> </div>
<div class="form-item"> <div class="form-item">
<span class="form-label">联系方式</span> <span class="form-label">联系方式</span>
<div class="form-input-wrap"> <div class="form-input-wrap" style="display: flex; align-items: center;">
<p class="form-content">{{formData.contactDetails}}</p> <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> </div>
</div> </div>
......
...@@ -8,6 +8,11 @@ window.addEventListener('load', function () { ...@@ -8,6 +8,11 @@ window.addEventListener('load', function () {
return { return {
formData: { formData: {
}, },
// 添加显示状态管理对象
showOriginal: {
contactName: false,
contactDetails: false
}
} }
}, },
computed: {}, computed: {},
...@@ -15,6 +20,22 @@ window.addEventListener('load', function () { ...@@ -15,6 +20,22 @@ window.addEventListener('load', function () {
this.detail() this.detail()
}, },
methods: { 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() { detail() {
vant.Toast.loading({ vant.Toast.loading({
message: '正在加载...', 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