From bc6cc128e2a0b67c8a7515f73ecd23795a0cc619 Mon Sep 17 00:00:00 2001 From: xugaoyi <894072666@qq.com> Date: Fri, 3 Jun 2022 20:42:34 +0800 Subject: [PATCH] feat: v1.12.3 --- docs/.vuepress/config.ts | 3 +++ package.json | 2 +- vdoing/components/Buttons.vue | 5 ++--- vdoing/layouts/Layout.vue | 9 ++++++--- vdoing/package.json | 2 +- vdoing/types/index.ts | 6 ++++++ 6 files changed, 19 insertions(+), 8 deletions(-) diff --git a/docs/.vuepress/config.ts b/docs/.vuepress/config.ts index f051289..7115a30 100644 --- a/docs/.vuepress/config.ts +++ b/docs/.vuepress/config.ts @@ -155,6 +155,9 @@ export default defineConfig4CustomTheme({ // sidebarOpen: false, // 初始状态是否打开左侧边栏,默认true // pageButton: false, // 是否显示快捷翻页按钮,默认true + // 默认外观模式(用户未在页面手动修改过模式时才生效,否则以用户设置的模式为准),可选:'auto' | 'light' | 'dark' | 'read',默认'auto'。 + // defaultMode: 'auto', + // 侧边栏 'structuring' | { mode: 'structuring', collapsable: Boolean} | 'auto' | <自定义> 温馨提示:目录页数据依赖于结构化的侧边栏数据,如果你不设置为'structuring',将无法使用目录页 sidebar: 'structuring', diff --git a/package.json b/package.json index 30aff92..0be3075 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "vuepress-plugin-one-click-copy": "^1.0.2", "vuepress-plugin-thirdparty-search": "^1.0.2", "vuepress-plugin-zooming": "^1.1.7", - "vuepress-theme-vdoing": "^1.12.1", + "vuepress-theme-vdoing": "^1.12.3", "yamljs": "^0.3.0" } } diff --git a/vdoing/components/Buttons.vue b/vdoing/components/Buttons.vue index da2fbb4..abf239d 100644 --- a/vdoing/components/Buttons.vue +++ b/vdoing/components/Buttons.vue @@ -56,7 +56,7 @@ export default { scrollTop: null, showCommentBut: false, commentTop: null, - currentMode: null, + currentMode: '', showModeBox: false, modeList: [ { @@ -89,8 +89,7 @@ export default { } }, mounted () { - this.currentMode = storage.get('mode') || 'auto' - + this.currentMode = storage.get('mode') || this.$themeConfig.defaultMode ||'auto' this.scrollTop = this.getScrollTop() window.addEventListener('scroll', debounce(() => { this.scrollTop = this.getScrollTop() diff --git a/vdoing/layouts/Layout.vue b/vdoing/layouts/Layout.vue index 7361ef3..62dda70 100644 --- a/vdoing/layouts/Layout.vue +++ b/vdoing/layouts/Layout.vue @@ -121,7 +121,7 @@ export default { hideNavbar: false, isSidebarOpen: true, showSidebar: false, - themeMode: 'light', + themeMode: 'auto', showWindowLB: true, showWindowRB: true } @@ -203,7 +203,6 @@ export default { 'have-body-img': this.$themeConfig.bodyBgImg, 'only-sidebarItem': this.sidebarItems.length === 1 && this.sidebarItems[0].type === 'page', // 左侧边栏只有一项时 }, - // 'theme-mode-' + this.themeMode, userPageClass ] } @@ -217,7 +216,11 @@ export default { beforeMount() { this.isSidebarOpenOfclientWidth() const mode = storage.get('mode') // 不放在created是因为vuepress不能在created访问浏览器api,如window - if (!mode || mode === 'auto') { // 当未切换过模式,或模式处于'跟随系统'时 + const { defaultMode } = this.$themeConfig + + if (defaultMode && defaultMode !== 'auto' && !mode ) { + this.themeMode = defaultMode + } else if(!mode || mode === 'auto' || defaultMode === 'auto') { // 当未切换过模式,或模式处于'跟随系统'时 this._autoMode() } else { this.themeMode = mode diff --git a/vdoing/package.json b/vdoing/package.json index 71cd35d..d6d2d35 100644 --- a/vdoing/package.json +++ b/vdoing/package.json @@ -1,6 +1,6 @@ { "name": "vuepress-theme-vdoing", - "version": "1.12.1", + "version": "1.12.3", "description": "Vdoing theme for VuePress. 一个基于VuePress的知识管理兼博客主题。", "author": { "name": "gaoyi(Evan) Xu" diff --git a/vdoing/types/index.ts b/vdoing/types/index.ts index 6f0791e..98c7e12 100644 --- a/vdoing/types/index.ts +++ b/vdoing/types/index.ts @@ -101,6 +101,12 @@ export interface VdoingThemeConfig extends NoSidebar4DefaultThemeConfig { */ pageButton?: boolean; + /** + * 默认外观模式 + * @default 'auto' + */ + defaultMode?: 'auto' | 'light' | 'dark' | 'read'; + /** * 侧边栏配置 */