封装方法——加密手机号和固话 & 加密身份证号

封装方法——加密手机号和固话 & 加密身份证号

列表加密手机号-效果

在这里插入图片描述

1、封装的方法

src/utils/encrypte.ts

// /*加密手机号*/
// /*加密固话*/
export default {
    encryptPhone: (param) => {
        if (!param) return '';
        let str = '' + param;
        if (str.length < 3) return str;
        if (str.length === 11) {
            return str.substr(0, 3) + '****' + str.substr(-4);
        } else {
            return str.substr(0, 6) + '***' + str.substr(-2);
        }

    },
// /*加密身份证号*/
    encryptIdCard: (param) => {
        let str = '' + param;
        if (!str || str === 'null') return '';
        if (str.length < 6) return str;
        return str.substr(0, 6) + '********' + str.substr(-4);
    }
};
2、页面中使用

index.vue

<template>
<span><i class="iconfont iconshenfenzheng"></i>
    {{Encrypte.encryptIdCard(ruleForm.idCardNo)}}
</span>
</template>


<script>
import Encrypte from '@/utils/encrypte';
 
       //手机号部分
       {
            prop: 'phone',
            label: '手机号',
            'min-width': 100,
            sort: false,
            'show-overflow-tooltip': false,
            formatter: phone => {
                return Encrypte.encryptPhone(phone);
            },
        },
            
        //身份证号
        {
            prop: 'idCardNo',
            label: '身份证号',
            'min-width': 170,
            sort: false,
            formatter: idCard => {
                return Encrypte.encryptIdCard(idCard);
            },
        },
            
            
       //方法应用
        queryPageData() {
            const params = methods.buildRequestParams();
            state.tableData = [];
            income_post_list(params).then(res => {
                let { items, pageParam } = res.data || {};
                let result = (items || []).map(item => {
                    //身份证号赋值-调用封装方法
                    item['idCardNoStr'] = Encrypte.encryptIdCard(
                        item.idCardNo
                    );
                    item['auditStatusStr'] =
                        checkOptionsMap[item.auditStatus]?.label;
                    item['grantStatus'] =
                        item['grantStatus'] == null
                            ? 1
                            : item['grantStatus'];
                    return item;
                });
                const { totalCount = 0 } = pageParam || {};
                listStepUpdate(state.tableData, result);
            });
        },            
</script>

//薪资-元
{
    prop: 'wageSalary',
    label: '薪资',
    'min-width': 100,
    sort: false,
    formatter: function (item) {
        if (!item) {
            return '-';
        } else {
            return item / 100;
        }
    },
},
    
//账号状态
{
    prop: 'accountStatus',
    label: '账号状态',
    'min-width': 80,
    sort: false,
    //返回数字-显示文字
    formatter: function (item) {
        let text = '';
        if (item === 1) {
            text = '停用';
        } else {
            text = '正常';
        }
        return text;
    },
},   
    
//时间
{
    prop: 'abnorTime',
    label: '异动时间',
    'min-width': 100,
    sort: false,
    formatter: function (item) {
        if (!item) {
            return '-';
        } else {
            //显示时间格式为  2021/11/03
            return new Date(item).toLocaleDateString();
        }
    },
},

new Date().toLocaleDateString() 今天本地时间字符串格式,如"2021/11/03"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值