解决elementui表格操作列自适应列宽


Posted in Javascript onDecember 28, 2020

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

写死宽度时是这样的:

解决elementui表格操作列自适应列宽

开始

给操作列绑定宽度属性

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

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

class="action-col"

<div class="action-col">
 <el-button></el-button>
 ...
</div>

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);
 });

看一下效果

没有按钮时:

解决elementui表格操作列自适应列宽

有一个按钮:

解决elementui表格操作列自适应列宽

有两个按钮:

解决elementui表格操作列自适应列宽

有三个按钮:

解决elementui表格操作列自适应列宽

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

Javascript 相关文章推荐
Javascript 不能释放内存.
Sep 07 Javascript
悄悄用脚本检查你访问过哪些网站的代码
Dec 04 Javascript
alert出数组中的随即值代码
Sep 25 Javascript
JavaScript实现图片滑动切换的代码示例分享
Mar 06 Javascript
Javascript 实现放大镜效果实例详解
Dec 03 Javascript
vue如何实现observer和watcher源码解析
Mar 09 Javascript
JS判断时间段的实现代码
Jun 14 Javascript
使用Nuxt.js改造已有项目的方法
Aug 07 Javascript
小程序获取周围IBeacon设备的方法
Oct 31 Javascript
解决vue的touchStart事件及click事件冲突问题
Jul 21 Javascript
vue 获取到数据但却渲染不到页面上的解决方法
Nov 19 Vue.js
Vue SPA 首屏优化方案
Feb 26 Vue.js
微信小程序视频弹幕发送功能的实现
Dec 28 #Javascript
React实现todolist功能
Dec 28 #Javascript
mustache.js实现首页元件动态渲染的示例代码
Dec 28 #Javascript
11个Javascript小技巧帮你提升代码质量(小结)
Dec 28 #Javascript
vue中watch的用法汇总
Dec 28 #Vue.js
浅析vue中的nextTick
Dec 28 #Vue.js
js仿淘宝放大镜效果
Dec 28 #Javascript
You might like
PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解
2013/04/26 PHP
个人总结的一些关于String、Function、Array的属性和用法
2007/01/10 Javascript
innerHTML,outerHTML,innerTEXT三者之间的区别
2007/01/28 Javascript
button没写type=button会导致点击时提交
2014/03/06 Javascript
javascript学习笔记之10个原生技巧
2014/05/21 Javascript
js实现简单div拖拽功能实例
2015/05/12 Javascript
json格式的javascript对象用法分析
2016/07/04 Javascript
div实现自适应高度的textarea实现angular双向绑定
2017/01/08 Javascript
微信小程序 slider的简单实例
2017/04/19 Javascript
JSON对象转化为字符串详解
2017/08/11 Javascript
swiper自定义分页器使用方法详解
2020/09/14 Javascript
微信小程序中使用ECharts 异步加载数据的方法
2018/06/27 Javascript
VUE基于NUXT的SSR 服务端渲染
2018/11/30 Javascript
浅谈Python程序与C++程序的联合使用
2015/04/07 Python
让python 3支持mysqldb的解决方法
2017/02/14 Python
浅析python递归函数和河内塔问题
2017/04/18 Python
Python3操作Excel文件(读写)的简单实例
2019/09/02 Python
numpy 声明空数组详解
2019/12/05 Python
Spring实战之使用util:命名空间简化配置操作示例
2019/12/09 Python
Python3监控疫情的完整代码
2020/02/20 Python
Python如何实现在字符串里嵌入双引号或者单引号
2020/03/02 Python
基于python 等频分箱qcut问题的解决
2020/03/03 Python
机械工程师求职自我评价
2013/09/23 职场文书
医科学校毕业生自荐信
2013/11/09 职场文书
yy结婚证婚词
2014/01/10 职场文书
授权收款委托书范本
2014/10/10 职场文书
爱岗敬业事迹材料
2014/12/24 职场文书
小学母亲节活动总结
2015/02/10 职场文书
小学公民道德宣传日活动总结
2015/03/23 职场文书
2015年新农合工作总结
2015/03/30 职场文书
2016年大学生暑期社会实践活动总结
2016/04/06 职场文书
公文写作:工伤事故分析报告怎么写?
2019/11/05 职场文书
小型企业的绩效考核制度模板
2019/11/21 职场文书
Python中requests做接口测试的方法
2021/05/30 Python
深入理解margin塌陷和margin合并的解决方案
2021/06/26 HTML / CSS
使用CSS实现一个搜索引擎的原理解析
2021/09/25 HTML / CSS