循序渐进VUE+Element 前端应用开发(9)--- 界面语言国际化的处理

Vue.use(VueI18n)

// 定义对应语言键,展开对应的键值对应表

const messages = {

en: {

…enLocale,

…elementEnLocale

},

zh: {

…zhLocale,

…elementZhLocale

}

}

其中message就是一个两个语言(en/zh)字典下的对照表,包含各自对应键值下的内容。

然后整个index.js文件就是公布对应的多语言处理接口和属性。

const i18n = new VueI18n({

locale: getLanguage(),

messages

})

export default i18n

然后在main.js函数里面处理国际化的处理即可:

Vue.use(ElementUI, {

size: Cookies.get(‘size’) || ‘medium’, // set element-ui default size

i18n: (key, value) => i18n.t(key, value) })

new Vue({

el: ‘#app’,

router,

store,

i18n,

render: h => h(App)

})

2、界面处理实现

====================================================================

首先,我们编辑一下对应国际化的键值内容,例如中文参照如下所示。

在这里插入图片描述

例如对应登录界面上,界面效果如下所示。

在这里插入图片描述

或者

在这里插入图片描述

其中里面的文本内容,我们都是以国际化处理内容。

如登陆表单里面的代码如下所示。

<el-input

v-model=“loginForm.username”

class=“area”

type=“text”

:placeholder=“$t(‘login.username’)”

prefix-icon=“el-icon-user-solid”

@keyup.enter.native=“submitForm(‘loginForm’)”

/>

<el-input

v-model=“loginForm.password”

class=“area”

type=“password”

:placeholder=“$t(‘login.password’)”

prefix-icon=“el-icon-lock”

@keyup.enter.native=“submitForm(‘loginForm’)”

/>

<el-button :loading=“loading” type=“primary” class=“submit_btn” @click=“submitForm(‘loginForm’)”>{{ $t(‘login.logIn’) }}

{{ $t(‘login.username’) }} : admin

{{ $t(‘login.password’) }} : {{ $t(‘login.any’) }}

我们多处采用了类似 t ( ′ l o g i n . u s e r n a m e ′ ) 的 函 数 处 理 方 式 来 动 态 获 取 对 应 语 言 的 内 容 即 可 , 其 中 t(‘login.username’) 的函数处理方式来动态获取对应语言的内容即可,其中 t(′login.username′)的函数处理方式来动态获取对应语言的内容即可,其中t()函数里面就是对应的语义解析的键参数,对应我们lang/zh.js里面或者lang/en.js里面的内容即可。

其中多语言切换的时候,单击图标就可以切换为其他语言内容了。

在这里插入图片描述

切换英文后界面如下所示:

在这里插入图片描述

同样,其他地方,如果需要切换多语言的国际化处理,也可以使用$t的转义方式,在顶部导航栏里面,我们可以设置得到多语言支持的界面。

在这里插入图片描述

中文界面提示如下所示。

在这里插入图片描述

这部分的实现代码是在组件模块里面,一样可以实现国际化的处理的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值