关于vue-i18n在单文件js中的使用
短信预约 -IT技能 免费直播动态提醒
vue-i18n在单文件js中使用
示例
import Vue from 'vue'
import VueI18n from 'vue-i18n'
Vue.use(VueI18n)
const i18n = new VueI18n({
locale: localStorage.getItem('userLanguage') : 'zh',
messages: {
'zh': require('../assets/i18n/zh'), // 中文语言包
'en': require('../assets/i18n/en') // 英文语言包
}
})
export default {
// ...
tipMsg: {
// 使用
phone: i18n.t('TipPhoneFormatError'),
password: i18n.t('Password'),
}
};
i18n如何在js文件中生效
在vue项目中引用vue-i18n实现语言切换功能,开发过程中发现,在vue文件中使用都可以,但是在js文件中直接使用$t('zhKey.首页')是不生效的。
下面是我研究出的解决方法
// js文件中
import Vue from 'vue'
import VueI18n from 'vue-i18n'
import messages from 'unisoc-ui/js/i18n/langs'
Vue.use(VueI18n) // 这里一行是必须加的。
// 在该js文件中,单独注册一个i18n实例并引入语言文件
const i18n = new VueI18n({
locale: localStorage.lang || 'Zh_CN',
messages: messages
})
let mainNavlist = []
mainNavlist = [
{
icon: 'iconuser',
title: i18n.t('zhKey.首页'),
url: '/'
}
]
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341