微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Docusaurus 可以读取文件夹中的所有文件吗?

如何解决Docusaurus 可以读取文件夹中的所有文件吗?

使用 Docusaurus sidebars.js 可以这样指定:

module.exports = {
  docs: [
    {
      type: 'category',label: 'Docs',items: [
        {
          type: 'category',label: 'Widgets',items: 
          [
            'widgets/getting-started','widgets/create-a-page','widgets/create-a-document','widgets/create-a-blog-post','widgets/markdown-features','widgets/thank-you',],},{
          type: 'category',label: 'Next category',items: 
          [
            'next/getting-started'
          ]
        }        
      ]
    },};

这意味着我需要将我创建的每个文件放入 sidemenu.js。是否可以只放一个通配符,例如 *.* 并动态读取文件夹中的所有文件

解决方法

从 Docusaurus 文档中提取n (https://docusaurus.io/docs/sidebar)

Docusaurus 可以根据您的文件系统结构自动创建侧边栏:每个文件夹创建一个侧边栏类别。

Docusaurus 将自动生成的项目转换为侧边栏切片:类型为 doc 和类别的项目列表。

type SidebarItemAutogenerated = {
  type: 'autogenerated';
  dirName: string; // Source folder to generate the sidebar slice from (relative to docs)
};

Docusaurus 可以从您的 docs 文件夹生成侧边栏:

sidebars.js:

module.exports = {
  myAutogeneratedSidebar: [
    {
      type: 'autogenerated',dirName: '.',// '.' means the current docs folder
    },],};

您还可以在侧边栏中使用多个自动生成的项目,并将它们与常规侧边栏项目交错:

sidebars.js:

module.exports = {
  mySidebar: [
    'intro',{
      type: 'category',label: 'Tutorials',items: [
        'tutorial-intro',{
          type: 'autogenerated',dirName: 'tutorials/easy',// Generate sidebar slice from docs/tutorials/easy
        },'tutorial-medium',dirName: 'tutorials/advanced',// Generate sidebar slice from docs/tutorials/hard
        },'tutorial-end',},{
      type: 'autogenerated',dirName: 'guides',// Generate sidebar slice from docs/guides
    },label: 'Community',items: ['team','chat'],};

与上面的示例一样,对于您的示例,您应该使用 type: 'autogenerated'dirName: 'widgets'

我建议您仔细阅读侧边栏文档以正确应用此内容

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。