ATQQ / sugar-blog

✍️📚我写博客的地方🤪🤪🤪记录随笔与学习笔记,仓库包含:博客内容,博客主题、博客模板、vitepress离线全文搜索插件、VitePress RSS 支持插件;a blog theme use vitepress
https://sugarat.top
MIT License
330 stars 61 forks source link

如果我有一系列的文档需要vitepress官方那种左侧导航栏的怎么做 #254

Closed wakaryry closed 2 months ago

wakaryry commented 2 months ago

我现在有:

我应该如何在一个press下自由切换。

ATQQ commented 2 months ago

https://theme.sugarat.top/config/global.html#recommend

可以看一下全局的 recommend 配置 里的filter 方法。

理论上列表为空的时候就可以不展示 主题内置的这个相关文章。

ATQQ commented 2 months ago
const blogTheme = getThemeConfig({
  recommend: {
    filter(page){
     // 筛选过滤为空数组 
    },
    empty: false // false时无推荐文章不展示此模块
  }
})
wakaryry commented 2 months ago

那么我要如何才能显示出来 博客主题 下的 相关文章 侧边栏了?

我现在是想某个文件夹下面的文档按照vitepress的sidebar来配置,我们可以控制分类。 其他的文章就算是博客文章,按照我们的主题来配置,左侧出现的是 相关文章 类似的配置。

问题是:我为doc设置sidebar之后,非doc文件夹下的博客文章的侧边栏就不会显示出来。

{
sidebar: {
      '/doc/': {
        base: '/doc/',
        items: [
          {
            text: '简介',
            collapsed: false,
            items: [
              {
                text: '指引',
                link: 'guide'
              }
            ]
          }
        ]
      }
    },
}
{
// 推荐文章
  recommend: {
    // 当没有推荐文章时的提示,设置为 false 则不展示
    empty: false,
    filter: (page) => {
      // console.log(page)
      if (page.route.startsWith('/doc/')) {
        return false
      }
      return true
    }
  }
}

谢谢

ATQQ commented 2 months ago

sidebar 配置成一个数组,加入一项这个

sidebar: [
          {
            text: '',
            items: []
          }
        ]
wakaryry commented 2 months ago

这样设置is OK。

sidebar: {
      '/': {
        base: '/',
        items: [{
          text: '',
          items: []
        }]
      },
      '/doc/': {
          base: '/doc/',
          items: sidebarDoc()
        }
    }

感谢提示。