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*1000
  var 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('取消删除');
    },
  });
},

后续再进行补充。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linux处理系统常见命令

目录 1 sudo 1.1 介绍 1.2 配合 2 ifconfig与ping 2.1 ifconfig 2.2 ping 3 kill 4 apt-get 4.1 介绍 4.2 配合 5 history 6 clear 7 env 1 sudo 1.1 介绍 给这条命令最高权限&#xff0c;比如 sudo cp something.txt /usr/bin/something.txt 1…

Neural Architecture Search for Deep Image Prior

深度图像先验的神经结构搜索 论文链接&#xff1a;https://arxiv.org/abs/2001.04776 项目链接&#xff1a;https://github.com/Pol22/NAS_DIP Abstract 在最近提出的深度图像先验算法(DIP)下&#xff0c;我们提出了一种神经结构搜索(NAS)技术来提高无监督图像去噪、修复和超…

一文了解什么是GIS

地理信息系统&#xff08;GIS&#xff09;是捕捉、存储、分析和呈现空间数据的强大工具。通过将地理信息与其他数据源相结合&#xff0c;GIS为有效决策至关重要的模式、关系和趋势提供了有价值的见解。 一、GIS的关键概念 1.空间数据&#xff1a;GIS依赖于空间数据&#xff0c…

ODBC一般操作

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 例如&#xff1a;…

注解Annotation - Java

注解Annotation 一、介绍二、使用三、三个基本的Annotation四、JDK内置的基本注解类型1、Override2、Deprecated3、SuppressWarnings 五、JDK的元注解1、Retention2、Target3、Documented4、Inherited 一、介绍 注解&#xff08;Annotation&#xff09;也被称为元数据&#xf…

老师怎么选班干部

对于老师来说&#xff0c;选择合适的班干部是一项重要任务。班干部不仅是学生的榜样&#xff0c;也是班级秩序维护者。 了解学生的情况是必要的。老师需要了解每个学生的性格、能力和潜力&#xff0c;为他们分配适合的职务。对于新班级&#xff0c;可以观察学生在课堂上的表现、…

C++11新特性(上)

一、C11简介 相比C98/03&#xff0c;C11则带来了数量可观的变化&#xff0c;其中包含了约140个新特性&#xff0c;以及对C03标准中约600个缺陷的修正&#xff0c;这使得C11更像是从C98/03中孕育出的一种新语言。相比较而言&#xff0c;C11能更好地用于系统开发和库开发、语法更…

Breadcrumb面包屑(antd-design组件库)简单用法和自定义分隔符

1.Breadcrumb面包屑 显示当前页面在系统层级结构中的位置&#xff0c;并能向上返回。 2.何时使用 当系统拥有超过两级以上的层级结构时&#xff1b; 当需要告知用户『你在哪里』时&#xff1b; 当需要向上导航的功能时。 组件代码来自&#xff1a; 面包屑 Breadcrumb - Ant Des…

linux 磁盘扩容初始化挂载 笔记

目录 说明环境信息前提条件 操作步骤 说明 linux 系统磁盘扩容步骤 环境信息 系统信息&#xff1a;Linux version 4.19.90-23.8.v2101.ky10.aarch64cpu信息&#xff1a;Kunpeng-920 、aarch64、64-bit、HiSilicon 前提条件 有未初始化的用户磁盘操作系统可以支持当前磁盘的…

不确定度校准和可靠性图简介

图片来源 项杰 一、说明 不确定性校准是机器学习中最容易被误解的概念之一。它可以概括为这个简单的问题&#xff1a;“鉴于上述下雨的可能性&#xff0c;您是否带伞&#xff1f;” 我们在日常生活中使用主观概率和不确定性校准的概念&#xff0c;但没有意识到它们。对于不确定…

Linux命令中的符号

目录 1 管道符 | 1.1 | grep [要检索的东西] 1.2 echo | tee 2 重定向 2.1 输出重定向覆盖 > 2.2 输出重定向添加 >> 2.3 文件输入重定向 < 2.4 多行文本输入重定向 << 2.5 常用搭配 2.5.1 终端不显示 > /dev/null 1 管道符 | 我们…

国标GB28181协议/RTSP视频监控汇聚平台EasyCVR(V.3.4)页面UI大更新

为提高用户体验&#xff0c;增强平台功能&#xff0c;旭帆科技的Easy系列平台也在不断优化更新中。在最新的EasyCVR&#xff08;V.3.4&#xff09;中&#xff0c;其最显著的区别即为首页UI的调整。 其亮点是在【配置中心】-【基础配置】-【展示信息】中&#xff0c;首页UI可分…

软文推广中什么样的热点值得追?

只要媒体存在一日&#xff0c;那世界上就不会缺热点&#xff0c;追热点应该是每个运营er的必备技能&#xff0c;但是市面上的热点层出不穷&#xff0c;什么样的热点才值得追呢&#xff1f;接下来媒介盒子就和大家聊聊&#xff1a;判断热点值不值得追的三大要素。 一、 事件属性…

three.js球体实现

作者&#xff1a;baekpcyyy&#x1f41f; 使用three.js渲染出可以调节大小的立方体 1.搭建开发环境 1.首先新建文件夹用vsc打开项目终端 2.执行npm init -y 创建配置文件夹 3.执行npm i three0.152 安装three.js依赖 4.执行npm I vite -D 安装 Vite 作为开发依赖 5.根…

LeeCode前端算法基础100题(2)- 最多水的容器

一、问题详情&#xff1a; 给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线&#xff0c;使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明&#xff1a;…

商业5.0:数字化时代的商业变革

随着数字化技术的迅速发展和应用&#xff0c;商业领域正在经历前所未有的变革。商业5.0&#xff0c;作为数字化时代的新概念&#xff0c;旨在探讨商业模式的创新和演变&#xff0c;从1.0到5.0&#xff0c;商业领域经历了从传统到数字化的转变。 一、商业1.0&#xff1a;传统商…

如何应对雨天飞行的挑战?无人机机库防护能力解析

一、 背景介绍 无人机机库是无人机停放和起降场所&#xff0c;类似传统飞机的 hangar&#xff08;飞机库&#xff09;。它是一个专门用于存储、维护和保护无人机的设施。无人机机库的存在有助于提高无人机的安全性&#xff0c;同时也为无人机提供了一个有序的管理场所。 雨天…

锂电涂布机设备健康管理:降低运维成本的关键

随着锂电池行业的快速发展&#xff0c;锂电涂布机设备作为关键生产工艺装备&#xff0c;扮演着至关重要的角色。然而&#xff0c;涂布机设备的故障和维护成本对于企业来说是一个不可忽视的挑战。本文将介绍做好锂电涂布机设备的健康管理&#xff0c;降低运维成本的关键措施。 锂…

数据库基础入门 — 函数

我是南城余&#xff01;阿里云开发者平台专家博士证书获得者&#xff01; 欢迎关注我的博客&#xff01;一同成长&#xff01; 一名从事运维开发的worker&#xff0c;记录分享学习。 专注于AI&#xff0c;运维开发&#xff0c;windows Linux 系统领域的分享&#xff01; 本…

Notepad++批量添加引号

工作中经常会遇到这样情景&#xff1a;业务给到一批订单号&#xff0c;需要查询这批订单的某些字段信息。在where条件中需要传入这些订单号的数组&#xff0c;并且订单号用引号引起&#xff0c;用引号隔开。 字符串之间长度相同 可以按住CtrlAlt和鼠标左键选中区域&#xff0…