//使用这个方法noPassByName
<view class="name">{{noPassByName(item.name)}}</view>
//仅作为一个参考思路,还需根据自己需求进行修改,以下代码只是本人个人需求
noPassByName(str, item, type) {
//如果是本人就直接显示用户昵称
if (item.memberId === this.completeList.memberId) {
if (type === 'ellipsis') {
if (!str) {
return ''
}
str = str.substring(0, 5) + (str.length > 5 ? '...' : '')
}
return str
}
//名字脱敏
if (str) {
if (str.length < 2) {
return str
} else if (str.length == 2) {
//截取name 字符串截取第一个字符,
return str.substring(0, 1) + '*'
} else if (str.length == 3) {
//截取第一个和第三个字符
return str.substring(0, 1) + '*' + str.substring(2, 3)
} else if (str.length > 3) {
return (
str.substring(0, 1) +
'*' +
'*' +
str.substring(str.length - 1, str.length)
) //截取第一个和大于第4个字符
}
} else {
return ''
}
}
名称效果图: