修改Antd vue表格的分页样式

本文讲述了作者如何在Vue3项目中使用AntDesignVue组件实现表格分页,解决了分页跟随表格移动和显示中文的问题,通过CSS样式固定了分页在底部,以及引入国际化配置来显示中文内容。
摘要由CSDN通过智能技术生成

前端:vue3 + ts + ant design vue

一、碎碎念

最近在改项目样式,根据UI要求,表格加分页,分页固定在底部,显示数据总数,且可以改变每页显示条目数。大致样式为:

我是在table头里加的pagination而不是单独用的pagination组件,直接用的话有两个问题:

  1. 分页会随着表格移动。也就是说,当表格数据较少时,分页会上移,没有固定在底部。
  2. 展示pageSize切换器后显示的是英文“10/page”。

在网上搜了一些文章,跟我的不太一样 ,有点复杂,但是也受到一点启发,于是顺利改好🎉

二、代码结构

父页面:platformView.vue

<template>
    <!--只是部分代码,并不是完整的-->
    <TableData :tableList="tableList" :pagination="pagination"/>
</template>
<script lang="ts" setup>
import TableData from './components/platformList/tableData.vue';

const pageSize = ref<number>(10);
const pagination = ref({
  total: 0,
  current: 1,
  pageSize: pageSize.value,
  showSizeChanger: true,
  showTotal: (total: number) => `共有 ${total} 条记录`,
});
</script>

子组件:tableData.vue

<template>
    <!--只是部分代码,并不是完整的-->
  <a-table :pagination="pagination" :scroll="{ y: 'calc(83vh - 128px)' }">
    <template #bodyCell="{ column, record }">
      
    </template>
  </a-table>
</template>
<script lang="ts" setup>

defineProps<{
  keyId: string;
  pagination:{
    total: number;
    current: number;
    pageSize: number;
  };
}>()
</script>
<style scoped lang="stylus">
</style>

三、解决过程

1.固定分页

用:deep去修改ant design的样式,在子组件里加

<style scoped lang="stylus">
:deep(.ant-pagination){
  position: fixed;
  bottom: 20px;
  right: 30px;
}
</style>

2.展示中文

在项目的App.vue文件里引入ant-design-vue自带的zh_CN,用a-config-provider 将RouterView包裹起来

import zhCN from "ant-design-vue/es/locale/zh_CN";

OK,完事儿。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值