fix(language): load locale during build of app.vue

This commit is contained in:
SabreCat
2021-11-18 11:00:01 -06:00
parent 30a5c3f91b
commit c7c17dbb55
2 changed files with 27 additions and 20 deletions

View File

@@ -406,7 +406,10 @@ export default {
this.$store.state.isUserLoaded = true;
Analytics.setUser();
Analytics.updateUser();
return axios.get('/api/v4/i18n/browser-script', { language: this.user.preferences.language });
}).then(() => {
const i18nData = window && window['habitica-i18n'];
this.$loadLocale(i18nData);
this.hideLoadingScreen();
// Adjust the timezone offset

View File

@@ -4,9 +4,7 @@
import moment from 'moment';
import i18n from '@/../../common/script/i18n';
export default {
install (Vue, { i18nData }) {
if (i18nData) {
function loadLocale (i18nData) {
// Load i18n strings
i18n.strings = i18nData.strings;
@@ -25,7 +23,13 @@ export default {
head.appendChild(script);
moment.locale(language.momentLangCode);
}
}
}
export default {
install (Vue, { i18nData }) {
if (i18nData) loadLocale(i18nData);
Vue.prototype.$loadLocale = loadLocale;
Vue.prototype.$t = function translateString (...args) {
return i18n.t.apply(null, [...args]);