added LocaleSaver.vue
This commit is contained in:
@@ -3,12 +3,14 @@ import {RouterView} from 'vue-router';
|
||||
import {Options, Vue} from 'vue-class-component';
|
||||
import DocumentLocaleSetter from '@/components/locale/DocumentLocaleSetter.vue';
|
||||
import NavBar from '@/components/NavBar.vue';
|
||||
import LocaleSaver from '@/components/locale/LocaleSaver.vue';
|
||||
|
||||
@Options({
|
||||
name: 'App',
|
||||
components: {
|
||||
NavBar,
|
||||
DocumentLocaleSetter,
|
||||
LocaleSaver,
|
||||
RouterView,
|
||||
},
|
||||
})
|
||||
@@ -19,6 +21,7 @@ export default class App extends Vue {
|
||||
|
||||
<template>
|
||||
<div class="d-flex flex-column h-100 w-100">
|
||||
<LocaleSaver/>
|
||||
<DocumentLocaleSetter/>
|
||||
<NavBar/>
|
||||
<RouterView class="flex-grow-1"/>
|
||||
|
||||
21
src/components/locale/LocaleSaver.vue
Normal file
21
src/components/locale/LocaleSaver.vue
Normal file
@@ -0,0 +1,21 @@
|
||||
<script lang="ts">
|
||||
import {Options, Vue} from 'vue-class-component';
|
||||
import {Watch} from 'vue-property-decorator';
|
||||
|
||||
@Options({name: 'LocaleSaver'})
|
||||
export default class LocaleSaver extends Vue {
|
||||
mounted(): void {
|
||||
const locale = window.localStorage.getItem('locale');
|
||||
if (locale)
|
||||
this.$i18n.locale = locale;
|
||||
}
|
||||
|
||||
@Watch('$i18n.locale')
|
||||
onLocaleChanged(value: string): void {
|
||||
window.localStorage.setItem('locale', value);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
</template>
|
||||
Reference in New Issue
Block a user