blessing-skin-server/resources/assets/src/scripts/i18n-text.js
2019-03-30 15:48:34 +08:00

32 lines
819 B
JavaScript

import elementLocale from 'element-ui/lib/locale'
const langs = {
en: {
bs: () => import('../../../lang/en/front-end.yml'),
element: () => import('element-ui/lib/locale/lang/en'),
},
zh_CN: {
bs: () => import('../../../lang/zh_CN/front-end.yml'),
element: () => import('element-ui/lib/locale/lang/zh-CN'),
},
}
async function load(language) {
const { bs: loadBS, element: loadElement } = langs[language]
await Promise.all([
(async () => {
const text = await loadBS()
blessing.i18n = Object.assign(blessing.i18n || Object.create(null), text)
})(),
(async () => {
elementLocale.use((await loadElement()).default)
})(),
])
}
export default function () {
return blessing.locale in langs
? load(blessing.locale)
: load(blessing.fallback_locale)
}