记忆所选语言
vue实现语言转换使用了vue-i18n,因为不记录用户上次所用的语言那么刷新后页面有回到了初始状态,我使用localStorage存储。
main.js中
const i18n = new VueI18n({
locale: localStorage.lang,
messages:{
……
}
})
当我们点击自己定义的语言转换按钮时,函数内
localStorage.lang='zhCN'
this.$i18n.locale='zhCN'
这样就会将我们当前所选语言存储下来。
语言自动转换
实现语言自动转换是通过用户的浏览器的首选语言实现的(在用户第一次访问时选择最合适的语言)
var lang = navigator.language;
if(!localStorage.lang) {
if (!lang || lang=="zh-CN") {
localStorage.lang = 'zhCN'
}
else if (lang == "zh-HK" || lang == "zh-TW") {
localStorage.lang = 'zhTW'
}
else {
localStorage.lang = 'en'
}
}