问题描述
我已经能够在我的应用程序中设置 i18n(遵循本教程:https://www.digitalocean.com/community/tutorials/vuejs-vue-with-i18n)。选择语言有效,但刷新后丢失。应该如何保存设置?这是通过 localStorage 完成的吗?谢谢
<select v-model="$i18n.locale">
<option
v-for="(lang,i) in langs"
:key="`lang-${i}`"
:value="lang"
>
{{ lang }}
</option>
</select>
解决方法
在选择语言时: 在 localStorage
上存储区域设置 localStorage.setItem('lang',localeCode)
在应用程序开始时在 main.js 上
new VueI18n({
locale: (localStorage.getItem('lang') || 'en'),// set default locale
},})
,
您可以使用 Vuex 存储选定的语言环境,然后使用 Vue watch(){}