В моем laravel 5.6 / vue.js 2.5.7 / я использую
vue-i18n 7.8 и laravel-vue-i18n-generator для поддержки нескольких языков:
и в файле resources / assets / js / app.js мне нравится:
...
let lang = 'fr';
const i18n = new VueI18n({ // https://github.com/caouecs/Laravel-lang - Additive langs
locale: lang, // set locale
messages : Locale, // set locale messages
})
new Vue({ router, i18n,
data:{
...
In my vue file wnen I need to read my current locale I can use like :
created() {
this.current_locale = this.$i18n;
...
Чтобы переключиться на другую локаль, я могу использовать такую функцию:
switchLocale () {
if (this.$i18n.locale === 'fr') {
this.$i18n.locale = 'en'
} else {
this.$i18n.locale = 'fr'
}
}
Вопрос в том, где сохранить текущий язык при переходе на другую страницу? Я имею в виду
let lang = 'fr';
в верхней части моего кода это локаль по умолчанию, но если локаль была изменена, откуда ее читать? Некоторое простое решение, пожалуйста.
Генерировать префикс в URL кажется очень сложным.
Спасибо!