element-plus 分页组件,自定义显示条数,中文版,以及页数,分页器,前往多少页布局

1、首先将element-plus组件进行翻译

在自己项目中创建js文件,写下如下配置
当然也可以在main.js中引入详情情看官方配置

export default {
  el: {
    pagination: {
      goto: "前往",
      pagesize: "条/页",
      total: `共 {total} 条记录 当前显示第 {total} 条记录`,
      pageClassifier: "页",
      name: "这是name"
    }
  }
};

在App.vue中使用el-config-provider 引入

<el-config-provider  :locale="zhCn">
    <router-view></router-view>
  </el-config-provider>
<script setup lang="ts">
	import zhCn from "element-plus/lib/locale/lang/zh-cn"; //element2.3.7引入方式
	import locale from "@/assets/locale/cn"; // 这里写自己的路径
	zhCn.el.pagination = Object.assign(zhCn.el.pagination, locale.el.pagination);
<script>

这样的做了之后,一是对所有的element组件进行了中文翻译,二是仅对了分页pagination组件做了定制化设置

2、修改分页中的 total/prev、pager、next、sizes、jumper布局,和自定义 在官方文档中有layout参数

在这里插入图片描述

layout="total, prev, pager, next, sizes, jumper"
layout="prev, pager, next, sizes, jumper,total"

很直观,根据你写的组件的顺序来进行布局

3、自定义内容

假如现在有个需求,需要将如下total 400 改为共有400条记录,当前是第20条记录
在这里插入图片描述
我们发现可以在第一种方式中进行el下的pagination下的total设置。但是这个 当前是第几条记录无法实现,翻阅了源码后发现,total这个小组件中只接收total参数
在这里插入图片描述
在这里插入图片描述

但是在layout中可以添加插槽slot,然后slot 的顺序就是你放置对应想写组件的顺序
于是:

<el-pagination
    background
    v-model.sync:current-page="currentPage"
    :page-sizes="[10, 25, 50, 100]"
    layout="slot, prev, pager, next, sizes, jumper"
    :total="total "
    @size-change="handleSizeChange"
    @current-change="handleCurrentChange"
  >
    <template #default>
      <span class="el-pagination__total is-first"> 共 {{ total }} 条记录 当前显示第 {{ currentTotal}} 条记录 </span>
    </template>
  </el-pagination>

效果就出来了
在这里插入图片描述

  • 12
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值