feat(cli): support switch lang
This commit is contained in:
@@ -1,6 +1,11 @@
|
||||
<template>
|
||||
<div class="app">
|
||||
<van-doc :lang="lang" :config="config" :simulator="simulator">
|
||||
<van-doc
|
||||
:lang="lang"
|
||||
:config="config"
|
||||
:simulator="simulator"
|
||||
:lang-configs="langConfigs"
|
||||
>
|
||||
<router-view />
|
||||
</van-doc>
|
||||
</div>
|
||||
@@ -9,6 +14,7 @@
|
||||
<script>
|
||||
import VanDoc from './components';
|
||||
import { config } from 'site-desktop-shared';
|
||||
import { setLang } from '../common/locales';
|
||||
|
||||
function getPublicPath() {
|
||||
const { site } = config.build || {};
|
||||
@@ -37,16 +43,29 @@ export default {
|
||||
return lang || '';
|
||||
},
|
||||
|
||||
langConfigs() {
|
||||
const { locales = {} } = config.site;
|
||||
return Object.keys(locales).map(key => ({
|
||||
lang: key,
|
||||
label: locales[key].langLabel || ''
|
||||
}));
|
||||
},
|
||||
|
||||
config() {
|
||||
const { locales } = config.site;
|
||||
|
||||
if (locales) {
|
||||
const { lang } = this.$route.meta;
|
||||
return locales[lang];
|
||||
return locales[this.lang];
|
||||
}
|
||||
|
||||
return config.site;
|
||||
}
|
||||
},
|
||||
|
||||
watch: {
|
||||
lang(val) {
|
||||
setLang(val);
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user