ant design of vue中表格列内容过长,需要截取并且鼠标滑过悬浮显示全部内容

项目开发中,总会遇到点七七八八的问题,ant design中table表格每一列内容过长需要截取,接下来我捋一下
首先初始界面展示:
在这里插入图片描述
因为这行内容过长了,导致我整个表格数据都不能完整的展示出来,如果我只去截取,那剩下的内容我想看,但是看不到呀,所以我就想办法进行截取并且鼠标滑上去的话进行展示全部,完美。

代码如下:

   const columns = [
    {
      title: '姓名',
      dataIndex: 'Name',
      key: 'name',
      width: 120,
      scopedSlots: { customRender: 'titleShow' },
    },
    ]

相当于给表格中需要操作的一列定义了具名插槽。
接下来我们需要操作:

<table  动态获取表格数据的代码>
   <div class="LeaveOut" :title="text"   slot="titleShow" slot-scope="text, record">
                  <div :style="{textAlign:'left'}">{{text}}</div>    //鼠标滑上去显示全部内容 
                </div>
                </a-table>

设置完之后,还需要对样式进行操作

 .LeaveOut{
      overflow: hidden;      /* 隐藏溢出*/
      height: 25px; 
      width: 53px;
    }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ant Design of Vue 提供了一个`<a-table>`组件,可以用来展示和操作表格数据。在这个组件,合并单元格需要使用`customRow`属性,结合自定义的方法来实现。 具体步骤如下: 1. 定义表格数据源: ```js data() { return { dataSource: [ { key: '1', name: 'John Brown', age: 32, address: 'New York No. 1 Lake Park', children: [ { name: 'Lucy Brown', age: 6 }, { name: 'Tom Brown', age: 4 }, ], }, { key: '2', name: 'Joe Black', age: 42, address: 'London No. 1 Lake Park', children: [ { name: 'Jim Black', age: 6 }, ], }, { key: '3', name: 'Jim Green', age: 32, address: 'Sidney No. 1 Lake Park', children: [], }, ], }; }, ``` 2. 定义表格的配置项: ```js columns: [ { title: 'Name', dataIndex: 'name', key: 'name', customRow(row, index) { const { dataSource } = this; const { children } = dataSource[index]; const rowSpan = children.length + 1; return { props: { rowSpan } }; }, }, { title: 'Age', dataIndex: 'age', key: 'age', }, { title: 'Address', dataIndex: 'address', key: 'address', }, { title: 'Children', dataIndex: 'children', key: 'children', slots: { customRender: 'children' }, }, ], ``` 在上面的配置项,`customRow`属性定义了如何合并单元格。具体来说,它会在渲染每一行数据时调用,传入两个参数:`row`表示当前行的数据,`index`表示当前行的索引。在方法体内,我们可以通过`this.dataSource`获取表格数据源,从而计算出当前行的`rowSpan`值,即合并的行数。 3. 在表格使用自定义的配置项: ```html <a-table :columns="columns" :data-source="dataSource"> <template #children="{ text }"> <span v-for="child in text" :key="child.name"> {{ child.name }} <a-divider type="vertical" /> {{ child.age }} </span> </template> </a-table> ``` 在上面的代码,我们使用`<template>`标签来定义自定义的渲染方式。其,`#children`表示渲染`children`,并传入`{ text }`作为参数,`text`表示当前行的`children`属性。在模板内容,我们可以通过`v-for`来遍历`children`数组,渲染出每个子元素的信息。 以上就是使用 Ant Design of Vue 实现合并表格的方法。需要注意的是,如果表格数据源有嵌套的数组,我们需要在自定义的渲染方式进行特殊处理,以展示嵌套数据的信息。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值