refactoring locales management

This commit is contained in:
les
2020-02-20 18:37:10 +01:00
parent 0416ddb1a3
commit 5769d1a3ed
18 changed files with 68 additions and 55 deletions

View File

@@ -7,17 +7,9 @@ import {
Container, Footer, Timeline, TimelineItem, Menu, MenuItem, Carousel, CarouselItem
} from 'element-ui'
import locale from 'element-ui/lib/locale'
// import '../assets/style.scss'
const locales = {
it: require('element-ui/lib/locale/lang/it'),
en: require('element-ui/lib/locale/lang/en'),
es: require('element-ui/lib/locale/lang/es'),
ca: require('element-ui/lib/locale/lang/ca')
}
export default ({ app, store }) => {
locale.use(locales[store.state.locale])
locale.use(require(`element-ui/lib/locale/lang/${store.state.locale}`))
Vue.use(Button)
Vue.use(Carousel)
Vue.use(CarouselItem)

View File

@@ -1,7 +1,6 @@
import Vue from 'vue'
import VueI18n from 'vue-i18n'
import merge from 'lodash/merge'
import messages from '../locales'
Vue.use(VueI18n)
@@ -11,6 +10,14 @@ export default ({ app, store, req }) => {
if (req.settings.user_locale) { store.commit('setUserLocale', req.settings.user_locale) }
}
const messages = {}
messages[store.state.locale] = require(`../locales/${store.state.locale}.json`)
// always include en fallback locale
if (store.state.locale !== 'en') {
messages.en = require('../locales/en.json')
}
if (store.state.user_locale) {
merge(messages[store.state.locale], store.state.user_locale)
}