29 lines
654 B
JavaScript
Vendored
29 lines
654 B
JavaScript
Vendored
import { useI18n, createI18n } from 'vue-i18n';
|
|
import axios from 'axios'
|
|
|
|
|
|
export const i18n = createI18n({
|
|
locale: 'de',
|
|
fallbackLocale: 'de',
|
|
allowComposition: true,
|
|
})
|
|
|
|
const loadedLanguages = []
|
|
|
|
function setI18nLanguage (i18n, lang) {
|
|
if (i18n.mode === 'legacy') {
|
|
i18n.global.locale = lang
|
|
} else {
|
|
i18n.global.locale.value = lang
|
|
}
|
|
axios.defaults.headers.common['Accept-Language'] = lang
|
|
document.querySelector('html').setAttribute('lang', lang)
|
|
return lang
|
|
}
|
|
|
|
export const loadLanguage = function(i18n, lng, texts) {
|
|
loadedLanguages.push(lng)
|
|
i18n.global.setLocaleMessage(lng, texts)
|
|
setI18nLanguage(i18n, lng)
|
|
}
|