html表格的某一列不显示,(iview)根据权限table表格控制columns 的某列显示与隐藏(通用)...

iview权限控制表格列
本文介绍如何在iview框架中实现基于用户权限控制表格列的显示与隐藏。通过复制原始列配置并根据用户类型(如普通用户或VIP用户)进行过滤,可以动态调整表格视图,以展示特定用户群所需的列。

iview根据权限table表格控制columns 的某列显示与隐藏(通用)

先给一个UI设计图:

0a394e6596d06c34d210ae88f39c3583.png

1.需求描述

根据权限控制某列中显示与隐藏

2.使用场景

根据不同用户(普通用户,vip用户),展示对应的列

3.解决思路

将原来的columns copy一份,然后根据权限去让它过滤对应的列,就能返回最新的columns了

举个例子,代码如下

created() {

userType(type) {

// type: 1 普通用户 2 vip用户 如果是普通用户则不能看到 couponAbleNum 这一列。

if (type == '1') { //此处判断不用用户类型是否有有对应的列权限

this.columns = this.columns.filter(col => col.type !== 'couponAbleNum' )

} else {

this.columns = this.columnsCopy

}

}

}

根据条件让:列1显示的时候列2隐藏,或者列2显示,列1隐藏;

做法如下:

//过滤掉,TCC 分区一列不显示,sc线路一列不显示

handleColumns(){

// console.log("historyColumns:",this.historyColumns);

let userType = this.$store.state.user.serverNodeId.substring(4,8);

// console.log("userType",userType);

if( userType !== "ZZZZ"){

this.historyColumns = this.historyColumns.filter(col => col.key !== 'lineName' );

}else{

this.historyColumns = this.historyColumns.filter(col => col.key !== 'areaName' )

}

}

mounted(){

this.handleColumns();//过滤哪列隐藏

},

完工:

da1a85003437f317a3ef5b33f467a9a9.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值