elementUI分页组件国际化

以我的项目为例
在这里插入图片描述
语言文件夹下index.js文件中代码如下:

import elementEnLocale from 'element-ui/lib/locale/lang/en'; // element-ui lang
import elementZhLocale from 'element-ui/lib/locale/lang/zh-CN';
import en from './en';
import zh from './zh';

export default {
    en: {
        ...en,
        ...elementEnLocale
    },
    zh: {
        ...zh,
        ...elementZhLocale
    }
};

locales.js中的代码如下:

import Vue from "vue";
import VueI18n from "vue-i18n";
Vue.use(VueI18n,{
    i18n: function(path, options) {
        let value = i18n.t(path, options);
        if (value !== null && value !== undefined) {
            return value;
        }
        return '';
    }
});
const DEFAULT_LANG = "zh";
const LOCALE_KEY = "local_lang";
import messages from '@/assets/lang';
const i18n = new VueI18n({
    locale: localStorage.getItem(LOCALE_KEY) || DEFAULT_LANG,
    messages: messages,
    silentTranslationWarn: true
});
// 设置默认语言
i18n.$InitLang = function(lang) {
    if (lang === undefined) {
        lang = localStorage.getItem(LOCALE_KEY);
        if (messages[lang] === undefined) {
            lang = DEFAULT_LANG;
        }
    }
    localStorage.setItem(LOCALE_KEY, lang);
    Vue.config.lang = lang;
    i18n.locale = lang; 
};
i18n.$InitLang();
export default i18n;

main.js文件中多语言的核心代码如下:

import Vue from 'vue'
import ElementUI from 'element-ui'
// 多语言
import i18n from '@/plugins/locales';
Vue.use(ElementUI, {
    i18n: (key, value) => i18n.t(key, value)
})

在lang.vue文件中使用

// 元素上切换语言绑定的方法为checkLang
<script>
import { resetRouter } from "@/router";
export default {
    name: "lang",
    data(){
        return{
            langList: [
                {name : 'zh', value: 'zh'},
                {name : 'en', value: 'en'}
            ]
        }
    },
    methods: {
        checkLang(el) {
            this.$i18n.locale = el;
            this.$i18n.$InitLang(el);
        }
    },
    computed: {
        currentlanguage(){
            return this.$i18n.locale;
        }
    }
};
</script>

以上就是自己编辑内容及使用elementUI组件国际化的全部代码,欢迎指点或采纳!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ElementUI 是一个基于 Vue.js 的组件库,其中包含了很多常用的组件,包括分页组件。使用 ElementUI分页组件可以非常方便地实现分页功能。 首先在你的 Vue.js 项目中安装 ElementUI: ``` npm install element-ui --save ``` 然后在你的代码中引入分页组件: ```html <template> <div> <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 40]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="total"> </el-pagination> </div> </template> <script> export default { data() { return { currentPage: 1, pageSize: 10, total: 100 }; }, methods: { handleSizeChange(val) { console.log(`每页 ${val} 条`); }, handleCurrentChange(val) { console.log(`当前页: ${val}`); } } }; </script> ``` 在上面的代码中,我们使用了 ElementUI 的 `el-pagination` 组件,并且设置了一些属性来配置分页功能。其中,`currentPage` 表示当前页码,`pageSize` 表示每页显示的数据条数,`total` 表示总数据条数。 在 `methods` 中,我们定义了两个函数,分别处理分页大小和当前页码的变化。这些函数可以根据实际需求来定制。 最后,我们在模板中使用 `el-pagination` 组件来实现分页功能,同时根据需要设置 `layout` 属性来控制分页组件的显示方式。 这就是使用 ElementUI 实现分页功能的基本步骤。根据实际需求,你可以根据 ElementUI 的文档来进一步定制分页组件的样式和功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值