ant design pro 數據脫敏(姓名/手機號)

utils.js

export default class Utils { 

	static  onlySeeSome(str,type) {//str文本-type類型:name/姓名;phone/手機號
	    let arr = JSON.parse(localStorage.getItem('user'))?.roleList
	    let isAdmin = arr?.find((item)=>item.roleKey == 'administrator')//權限數組是否有最高權限
	    
	    if( isAdmin || !str){
	      return str
	    }else{
	      //脫敏
	      if(type == 'name'){
	        return new Array(str?.length).join('*') + str?.substr(-1);
	      }else if(type == 'phone'){
	        return str?.replace(/(\d{3})\d*(\d{4})/,'$1****$2');
	      }     
	    } 
	 }	
  
}

使用

import Utils from '@/utils/utils'
//表格中
 const columns = [
	{
	  title: '患者姓名',
	  dataIndex: 'name',
	  key: 'name',
	  render:(val)=><span>{Utils.onlySeeSome(val,'name')}</span>
    },
    {
      title: '手機號',
      dataIndex: 'mobile',
      key: 'mobile',
      render:(val)=><span>{Utils.onlySeeSome(val,'phone')}</span>
    },
]
//html中
<span>{Utils.onlySeeSome(order.name,'name')}</span>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章