diff --git a/packages/vuepress-docs-test/docs/.vuepress/config.js b/packages/vuepress-docs-test/docs/.vuepress/config.js index 6064163..8f0ca2c 100644 --- a/packages/vuepress-docs-test/docs/.vuepress/config.js +++ b/packages/vuepress-docs-test/docs/.vuepress/config.js @@ -12,7 +12,8 @@ module.exports = { mode: "titlecase", map: { "/menu1/menu1-2/": "修改个标题", - "/menu2/menu2-2/": "中间分组" + "/menu2/menu2-2/": "中间分组", + "/menu1/menu1-1/": "分组666", } }, sidebarDepth: 1, @@ -26,7 +27,8 @@ module.exports = { menu: "/menu3/menu3-3/", regex: "ignore-*" } - ] + ], + removeEmptyGroup: true } }, themeConfig: { diff --git a/packages/vuepress-docs-test/docs/menu1/menu1-1/File1-1-1.md b/packages/vuepress-docs-test/docs/menu1/menu1-1/File1-1-1.md index c7d0621..7452646 100644 --- a/packages/vuepress-docs-test/docs/menu1/menu1-1/File1-1-1.md +++ b/packages/vuepress-docs-test/docs/menu1/menu1-1/File1-1-1.md @@ -1,5 +1,6 @@ --- title: file1-1-1 +autoGroup-1: 分组1 --- Hello File 1-1-1 diff --git a/packages/vuepress-docs-test/docs/menu1/menu1-1/File1-1-2.md b/packages/vuepress-docs-test/docs/menu1/menu1-1/File1-1-2.md index bc84974..c7feb52 100644 --- a/packages/vuepress-docs-test/docs/menu1/menu1-1/File1-1-2.md +++ b/packages/vuepress-docs-test/docs/menu1/menu1-1/File1-1-2.md @@ -1,6 +1,6 @@ --- title: file1-1-2 -autoPrev: File1-1-3 +autoGroup-1: 分组1 --- Hello File 1-1-2 \ No newline at end of file diff --git a/packages/vuepress-docs-test/docs/menu1/menu1-1/File1-1-3.md b/packages/vuepress-docs-test/docs/menu1/menu1-1/File1-1-3.md index 5b7b220..346f5ac 100644 --- a/packages/vuepress-docs-test/docs/menu1/menu1-1/File1-1-3.md +++ b/packages/vuepress-docs-test/docs/menu1/menu1-1/File1-1-3.md @@ -1,5 +1,6 @@ --- title: file1-1-3 +autoGroup-2: 分组2 --- Hello File 1-1-3 \ No newline at end of file diff --git a/packages/vuepress-docs-test/docs/menu1/menu1-1/Readme.md b/packages/vuepress-docs-test/docs/menu1/menu1-1/Readme.md index 6122de1..af014c9 100644 --- a/packages/vuepress-docs-test/docs/menu1/menu1-1/Readme.md +++ b/packages/vuepress-docs-test/docs/menu1/menu1-1/Readme.md @@ -1,5 +1,6 @@ --- title: file1-1 +autoGroup-2: 分组2 --- Hello File 1-1 \ No newline at end of file diff --git a/packages/vuepress-plugin-auto-sidebar/src/config/options.ts b/packages/vuepress-plugin-auto-sidebar/src/config/options.ts index 6f98d7d..ed083ba 100644 --- a/packages/vuepress-plugin-auto-sidebar/src/config/options.ts +++ b/packages/vuepress-plugin-auto-sidebar/src/config/options.ts @@ -25,6 +25,8 @@ export const AutoSidebarOptionsDefault: AutoSidebarPluginOptions = { uncollapseList: [] // 不折叠列表 }, ignore: [], + // 移除空分组 + removeEmptyGroup: false, git: { trackStatus: 'all' // 是否忽略未跟踪的文件 } diff --git a/packages/vuepress-plugin-auto-sidebar/src/types/index.ts b/packages/vuepress-plugin-auto-sidebar/src/types/index.ts index cb333ee..288a37c 100644 --- a/packages/vuepress-plugin-auto-sidebar/src/types/index.ts +++ b/packages/vuepress-plugin-auto-sidebar/src/types/index.ts @@ -88,6 +88,7 @@ export interface AutoSidebarPluginOptions { sidebarDepth: number collapse: CollapseOptions ignore: IgnoreOptions + removeEmptyGroup: Boolean git: GitOptions } diff --git a/packages/vuepress-plugin-auto-sidebar/src/utils/sidebar.ts b/packages/vuepress-plugin-auto-sidebar/src/utils/sidebar.ts index 0171ba2..964fcdf 100644 --- a/packages/vuepress-plugin-auto-sidebar/src/utils/sidebar.ts +++ b/packages/vuepress-plugin-auto-sidebar/src/utils/sidebar.ts @@ -164,5 +164,13 @@ export const genSidebar = (sortedGroupPages: GroupPagesResult, options: AutoSide ...below.map(b => genGroup(b.groupName, b.children, collapsable, options.sidebarDepth)) ] + if (options.removeEmptyGroup) { + acc[group].forEach((g, idx) => { + if (g.children.length === 0) { + acc[group].splice(idx, 1) + } + }) + } + return acc }, {})