feat(vant-cli): 支持通过 vant.config.js 配置是否显示页面右侧的手机模拟器

This commit is contained in:
HaoChuan9421 2021-03-15 00:24:13 +08:00
parent 336727556e
commit 3a900cdb7b
2 changed files with 11 additions and 6 deletions

View File

@ -6,6 +6,7 @@
:config="config" :config="config"
:versions="versions" :versions="versions"
:simulator="simulator" :simulator="simulator"
:has-simulator="hasSimulator"
:lang-configs="langConfigs" :lang-configs="langConfigs"
> >
<router-view /> <router-view />
@ -28,6 +29,7 @@ export default {
return { return {
simulator: `${path}mobile.html${location.hash}`, simulator: `${path}mobile.html${location.hash}`,
hasSimulator: true,
}; };
}, },
@ -63,18 +65,18 @@ export default {
watch: { watch: {
// eslint-disable-next-line // eslint-disable-next-line
'$route.path'() { '$route.path'() {
this.setTitle(); this.setTitleAndToogleSimulator();
}, },
lang(val) { lang(val) {
setLang(val); setLang(val);
this.setTitle(); this.setTitleAndToogleSimulator();
}, },
config: { config: {
handler(val) { handler(val) {
if (val) { if (val) {
this.setTitle(); this.setTitleAndToogleSimulator();
} }
}, },
immediate: true, immediate: true,
@ -82,7 +84,7 @@ export default {
}, },
methods: { methods: {
setTitle() { setTitleAndToogleSimulator() {
let { title } = this.config; let { title } = this.config;
const navItems = this.config.nav.reduce( const navItems = this.config.nav.reduce(
@ -101,6 +103,8 @@ export default {
} }
document.title = title; document.title = title;
this.hasSimulator = !(current && current.hideSimulator);
}, },
}, },
}; };

View File

@ -8,12 +8,12 @@
@switch-version="$emit('switch-version', $event)" @switch-version="$emit('switch-version', $event)"
/> />
<doc-nav :lang="lang" :nav-config="config.nav" /> <doc-nav :lang="lang" :nav-config="config.nav" />
<doc-container :has-simulator="!!simulator"> <doc-container :has-simulator="hasSimulator">
<doc-content> <doc-content>
<slot /> <slot />
</doc-content> </doc-content>
</doc-container> </doc-container>
<doc-simulator v-if="simulator" :src="simulator" /> <doc-simulator v-if="hasSimulator" :src="simulator" />
</div> </div>
</template> </template>
@ -39,6 +39,7 @@ export default {
lang: String, lang: String,
versions: Array, versions: Array,
simulator: String, simulator: String,
hasSimulator: Boolean,
langConfigs: Array, langConfigs: Array,
config: { config: {
type: Object, type: Object,