解决修改el-pagination显示文字的问题
作者:h&jjj
这篇文章主要介绍了解决修改el-pagination显示文字的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
场景
根据上图可以看到,element提供了附加功能,通过配置参数可实现总条数、跳转页面等的功能,但是有些不太友好的是,这些文字是写死的,不能自己通过插槽去修改,但是目前的需求就是和element提供的文字不一致,比如我只要xxx条,不要共字,那怎么符合当前需求呢?
下面来说实现方法。
修改查看element实现方式
1、进入element-ui下面的packages目录
2、找到pagination目录,找到pagination.js文件
根据代码可以看到,这里并没写死共XXX条,那这个文字是怎么出来的?
很明显跟这个this.t有关,在文件中搜索,发现并没有t的定义,因此肯定就在mixin中,找到该文件。
根据t返回的值,反推出跟zh-CN这个文件有关,查看该文件
找到定义的地方,接下来就好办了,要进行修改只需进行替换就行了。
修改实现
1、在 assets 文件夹中新增 /locale/cn.js 文件
export default { el: { table: { emptyText: '暂无数据', confirmFilter: '筛选', resetFilter: '重置', clearFilter: '全部', sumText: '合计' }, pagination: { goto: '前往', pagesize: '条/页', total: `{total} 条`, pageClassifier: '页' } } };
注意:
- 这里要加入table是因为,如果只改pagination,el-table 组件在没有数据时,「暂无数据」这样的默认提示文字消失了。
- 所以我们还需要把 el-table 这部分缺失文字覆盖补全
2、在main.js 中引入使用。
... import Element from 'element-ui'; import './styles/element-variables.scss'; // 覆盖一些element-ui样式风格 import zhLang from 'element-ui/lib/locale/lang/zh-CN'; // 引入官方的中文国际化 import locale from './assets/locale/cn'; // 引入自己的 Vue.use(Element, { locale: { ...zhLang, ...locale }, // 使用本地的 locale 去覆盖官方的 zhLang }); ...
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。