elementui表格宽度适应内容_解决elementui表格操作列自适应列宽

业务需要前端根据用户权限动态显示对应按钮,直接把操作列的列宽写死的话,在按钮少的情况下不是那么好看,所以想到了一个骚操作...

写死宽度时是这样的:

442e627a01dca9394c7c64835091fbf5.png

开始

给操作列绑定宽度属性

:width="actionColWidth < 80 ? 80 : actionColWidth"

把操作列的所有按钮用一个div套起来

class="action-col"

...

data里设置列宽初始值

actionColWidth: 80, //表格操作列宽度

在表格数据请求回来赋值给表格之后,执行计算宽度的操作

这里是用jq获取表格第一行的全部按钮,然后把每个按钮的宽度加起来,就是操作列的宽度。

不用jq的话用原生js也行。

如果表格每一行的操作按钮是不一样的,那么就获取每一行操作按钮的总宽度,然后取最大的就行。这里没有这个需求,就不写了。

getClerkList(params)

.then((res) => {

this.tableData = res.rows;

this.$nextTick(() => {

// 给表格操作列宽度多出25px,否则显示不完整

let width = 25;

// 使用jq遍历表格第一行操作列里的每一个按钮

$(".action-col")

.eq(0)

.children(".el-button")

.each(function () {

// 把每个按钮的宽度加起来

width += $(this).outerWidth(true);

});

// 把计算好的总宽度赋值给操作列宽

this.actionColWidth = width;

});

})

.catch((err) => {

console.error(err);

});

看一下效果

没有按钮时:

f12049bfbfdeccd1bcb7eacecb58406c.png

有一个按钮:

802c75354e73189d38dc0f8d95e49274.png

有两个按钮:

b2b30f22e0001e24fd4a4a13c6ab457b.png

有三个按钮:

6a216487cbf05b071ca93671d3549299.png

到此这篇关于解决elementui表格操作列自适应列宽的文章就介绍到这了,更多相关elementui表格自适应列宽内容请搜索得牛网以前的文章或继续浏览下面的相关文章希望大家以后多多支持得牛网!

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值