一.安装。 npm install vue-i18n
二、使用。 (这里只写核心代码)引入:
//插件和语言包import vue i18n from ' vue-i18n ' importzhfrom ' @/i18n/langs/zh ' importen from ' @/i18n/langs/en ' ven
在导出默认值(placestoporder : )中止损),) } zh文件:
导出默认值{ placestoporder 3360 ' placestoporder ',} en文件:
//多语言自动配置浏览器系统语言默认选择constnavlang=navigator.language; //constlocallang=(nav lang===' zh-cn '|nav lang===' en-us ' )确定当前浏览器使用的语言? navLang : false; let lang=local storage.getitem (language )|| ' en-us ); //获取缓存的语言const i18n=newvue i18n (本地: lang,消息:zh ) :zh,//中文语言包(en ) :en/(如果有) //最后一种目前使用的语言使用:
window._VM=newvue({router,store,i18n,//render:h=h(app ) } ) $mount ) ' #app ' ); window._vm :将new实例装载到window上,以便可以从其他单独的js文件中检索语言。
三.转换语言。 切换语言的核心代码:
//切换语言更改语言(lang ) { this.$i18n.locale=lang; localstorage.setitem(language,lang ); }呼叫时,中文传:'en-US ',英文传: ' zh-CN ',只要与配置时一致即可。
注册并挂载:
四.取得。 对于普通页面渲染:
div{{this.$t('placestoporder ' ) }}/div在js配置文件中时没有this。
_VM.$t(placestoporder ); 五.动态添加中英文(此功能可以忽略)。 如果数据来自后端,则必须动态添加英语。 方法如下。
添加this.$ i18n.mergelocalemessage (en ),res.data.en )//英语
添加this.$ i18n.mergelocalemessage (' zh,res.data.zh )//中文
说明:先将内存的语言修改了,代码:this.$i18n.locale = lang;再将缓存的语言也修改了。
步骤简单,不说废话浪费大家读过的事件。 如果还有什么其他问题的话,请私信或者评论。 官网: https://www.book stack.cn/read/vue-i18n-8.x/spilt.2.4e9cded0cfe 86 BD2. MD