a-table:表格组件常用功能记录——基础积累

antd+vue是我目前项目的主流,在工作过程中,经常用到table组件。下面就记录一下工作中经常用到的部分知识点。

table组件

<a-table :dataSource="tableData":rowKey="(row) => row.id":scroll="{ y: 550 }"bordered:pagination="pagination"@change="changeTable":columns="columns":defaultExpandAllRows="true"v-if="tableData && tableData.length"></a-table>

1 实现table表格默认全部展开效果

上面的defaultExpandAllRows是默认全部展开的意思。
具体展示效果如下:
在这里插入图片描述
为了能够实现全部展开的效果,还添加了v-if="tableData && tableData.length"

也就是说:通过以下两行代码就可以实现表格默认展开的效果了:
1.:defaultExpandAllRows="true"
2.v-if="tableData && tableData.length

2 实现自定义标题和自定义单元格内容

const columns = [{slots: { title: 'customTitle' },scopedSlots: { customRender: 'time' },width: 120,},
]

自定义标题:

<span slot="customTitle">创建时间</span>

自定义单元格内容:

<div slot="time" slot-scope="text, record">{{ record.creationTime }}
</div>

3 实现日期差

getDiffTime(newdate, olddate) {if (!newdate || !olddate) { return;}let new_date = new Date(newdate);let old_date = new Date(olddate);var subtime = (new_date - old_date) / 1000; //计算时间差,并将毫秒转化为秒var days = parseInt(subtime / 86400); //天  24*60*60*1000var hours = parseInt(subtime / 3600) - 24 * days; //小时  60*60  总小时数-过去小时数=现在小时数var mins = parseInt((subtime % 3600) / 60); //分钟 - (day*24)  以60秒为一整份  取余 剩下秒数 秒数/60就是分钟数var secs = parseInt(subtime % 60); //以60秒为一整份  取余  剩下秒数return `${days ? days + '天' : ''}${hours ? hours + '时' : ''}${mins ? mins + '分' : ''}`;
},

使用方法:getDiffTime(record.responseEndTime, record.creationTime)

4.表格数据获取及分页

this.loading = true;
getWarningList({ ...this.pagination, ...this.queryParam }).then((data) => {if (data.success) {let res = data.result;this.tableData = res.items || [];const pagination = { ...this.pagination };pagination.total = res.totalCount || 0;this.pagination = pagination;}}).finally(() => {this.loading = false;});

5.分页组件切换

changeTable(pagination, filters, sorter) {const pager = { ...this.pagination };pager.current = pagination.current;pager.pageSize = pagination.pageSize;this.pagination = pager;this.getList();
},

6.页面跳转

handleDetail(row) {this.$router.push({path: '/warning/detail',query: {id: row.id},});
},

7.删除某一条数据

handleDel(row,index) {this.$confirm({title: '提示',content: '此操作将永久删除该条数据, 是否继续?',okText: '确定',cancelText: '取消',onOk: () => {this.loading = true;delMenuRoute(row.id).then(() => {this.$message.success('删除成功!');//如果是不分页的表格,则可以直接通过下面的方法重新刷新此页面的数据this.filterSearch();//如果是分页的表格,则为了交互性良好,则需要进行下面的判断if(this.tableData.length==1&&this.pagination.current>1){this.pagination.current--;this.filterSearch();}else{this.tableData.splice(index,1);	}}).finally(() => {this.loading = false;});},onCancel: () => {this.$message.info('取消删除');},});
},

后续再进行补充。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/224864.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

卷积神经网络入门

1.卷积神经网络基本结构结构 卷积神经网络采用类似于动物视觉皮层组织中的神经元的连接模式&#xff0c;是一类包含卷积神经网络且具有深度结构的前馈神经网络。其基本结构如图2-1所示&#xff0c;大致包括&#xff1a;卷积层&#xff0c;激活函数&#xff0c;池化层&#xff…

网站纪念哀悼主题风格

前言 在许多情况下&#xff0c;为了表达对逝者的怀念和哀悼&#xff0c;网站会将其风格调整为黑白色。这种做法在一些网站中非常常见&#xff0c;包括一些社交媒体平台和新闻网站等。 当一个网站将其风格调整为黑白色时&#xff0c;这通常意味着它正在为一些悲伤的事件或纪念日…

Python Selenium 图片资源自动搜索保存 项目实践

实现访问首页 from os.path import dirnamefrom selenium import webdriverclass ImageAutoSearchAndSave:"""图片自动搜索保存"""def __init__(self):"""初始化"""self.driver webdriver.Chrome(executable_pa…

【c++|SDL】二、读取图片、显示图片、动画制作

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 读取图片&#xff0c;显示图片&#xff0c;动画 SDL中有两种在屏幕上显示的方法 SDL_Surface: 使用软件渲染处理SDL_Texture: 使用硬件加速渲染处理 1.…

Windows10-用户账户控制、Windows远程桌面

Windows10用户账户控制怎么设置白名单 问题引出&#xff1a; 安装低版本搜狗输入法后经常弹出用户账户控制 解决方案&#xff1a; 全局模式&#xff1a; UAC控制最早出现在Windows Vista中&#xff0c;用户帐户控制&#xff08;UAC&#xff09;是一项旨在防止对您的计算机…

【网络安全】-常见的网站攻击方式详解

文章目录 介绍1. SQL 注入攻击攻击原理攻击目的防范措施 2. 跨站脚本攻击&#xff08;XSS&#xff09;攻击原理攻击目的防范措施 3. CSRF 攻击攻击原理攻击目的防范措施 4. 文件上传漏洞攻击原理攻击目的防范措施 5. 点击劫持攻击原理攻击目的防范措施 结论 介绍 在数字时代&a…

hello vtk 圆柱

VTK 可视化的流程及步骤 标题引入VTK库和初始化&#xff1a; 引入 VTK 库和 AutoInit 模块&#xff0c;以便使用 VTK 的渲染和交互功能 设置背景颜色和颜色对象&#xff1a; 使用 vtkNamedColors 设置背景颜色和演员颜色。 创建圆柱体源&#xff1a; 使用 vtkCylinderSou…

图书管理系统源码,图书管理系统开发,图书借阅系统源码四TuShuManager应用程序MVC控制器Controllers

Asp.net web应用程序MVC之Controllers控制器 Controller在ASP.NET MVC中负责控制所有客户端与服务器端的交互,并且负责协调Model与View之间的数据传递,是ASP.NET MVC的核心。 撰写Controller的基本要求: 1、Controller必须为公开类别; 2、Controller名称必须以Controller结…

【C++】哈希(位图、布隆过滤器)

一、哈希的应用&#xff08;位图和布隆过滤器&#xff09; 1、位图&#xff08;bitset&#xff09; &#xff08;1&#xff09;位图概念 【题目】 给 40亿 个不重复的无符号整数&#xff0c;没排过序。给一个无符号整数&#xff0c;如何快速判断一个数是否在这 40亿 个数中。…

UserWarning: FigureCanvasAgg is non-interactive, and thus cannot be shown

一个奇怪的BUG 这个代码会报下面的错&#xff1a; 但是把模型导入部分注释掉之后就没有这个错误了&#xff08;第六行&#xff09; 解决办法&#xff1a;在模型加载后面加入一行代码 matplotlib.use( TkAgg’)&#xff0c;这个bug的问题就是模型加载改变了matplotlib使用的终端…

【Dockerfile】将自己的项目构建成镜像部署运行

目录 1.Dockerfile 2.镜像结构 3.Dockerfile语法 4.构建Java项目 5.基于Java8构建项目 1.Dockerfile 常见的镜像在DockerHub就能找到&#xff0c;但是我们自己写的项目就必须自己构建镜像了。 而要自定义镜像&#xff0c;就必须先了解镜像的结构才行。 2.镜像结构 镜…

在VMcentos7上用docker部署SELKS(IDS系统)

基本安装所需环境&#xff1a; 2核&#xff08;至少&#xff09;10 GB 可用 RAM&#xff08;经测试&#xff0c;4GB也能运行但会卡&#xff09;至少 30 GB 可用磁盘空间&#xff08;实际磁盘占用情况主要取决于规则数量和网络流量&#xff09;。建议使用 200GB SSD 级别。git,…