vue3 + ant-design-vue4表格插槽的使用

本文介绍了在AntDesignVue4中如何使用表格插槽定制列内容,包括自定义操作列和序号,以及如何避免官方不推荐的自定义插槽方法。还提到a-modal组件获取数据的问题及解决策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ant-design-vue4表格插槽的使用

  1. 定义插槽
{
    title: '操作',
    width: '20%',
    key: 'action',
    align: 'center',
    slots: {
      customRender: 'action'
    }
  }
  1. 自定义表格序号
// 两种写法
// 第一种: 使用columns的属性自定义序号规则
{
  title: '编号',
  dataIndex: 'num',
  width: '10%',
  key: 'id',
  align: 'center',
  customRender: (record) => {
    return (
        (queryParam.pageNum - 1) * pagination.pageSize + parseInt(record.index) + 1
    )
  }
}
// 第二种:使用插槽
{
  title: '编号',
  dataIndex: 'num',
  width: '10%',
  key: 'id',
  align: 'center',
  slots: {
    customRender: 'num' // 插槽名
  }
}

// 插入序号的地方添加以下代码
<template #num="{text, record, index}" >
  {{ (queryParam.pagenum - 1) * pagination.pageSize + parseInt(index) + 1}}	// 序号规则
</template >
  1. 使用插槽
<a-table
  row-key="id"
  :columns="columns"
  :pagination="pagination"
  :data-source="userList"
  :scroll="tableHeight"
  size="middle"
  bordered
  @change="handleTableChange"
  style="margin-top: 10px;height: 100%"
  >
  <template #bodyCell="{ column, record, index }">
    <template v-if="column.key === 'action'">
    <div class="actionSlot">
    	<a-button danger style="margin-right: 15px" @click="deleteUser(record)">删除</a-button>
    	<a-modal v-model:open="open" title="确定要删除该用户吗?" :mask="false" :confirm-loading="confirmLoading" @ok="handleOk">
    		<p>一旦删除,无法恢复</p>
  		</a-modal>
  	</div>
  	</template>
  </template>
</a-table>
  • a-modal 获取不到当前行的值,只能获取最后一行的值
  • 版本统一了插槽名,官方不推荐使用自定义插槽,idea 中会提示警告
  • 清空 reactive 的变量
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值