多版本文档
Rspress 的默认主题中支持多版本文档管理,接下来,我们将介绍如何接入多版本文档。
multiVersion
配置
通过 multiVersion
配置版本列表和默认版本,比如:
rspress.config.ts
import { defineConfig } from 'rspress/config';
export default defineConfig({
multiVersion: {
default: 'v1',
versions: ['v1', 'v2'],
},
});
其中,default
为默认版本,versions
为版本列表。
添加多版本文档
根据你配置的版本列表,在 docs
目录下,添加多版本文档,比如:
docs
├── v1
│ ├── README.md
│ └── guide
│ └── README.md
└── v2
├── README.md
└── guide
└── README.md
在 Rspress 的约定式路由中,对于默认版本,会自动省略掉版本的路径前缀。如 v1/README.md
会被渲染为 /README
路由,而 v2/README.md
会被渲染为 /v2/README
路由。
提示
对于文档中的链接,你不需要手动添加版本前缀,Rspress 会自动根据当前文档的版本,添加对应的版本前缀。如 v2/README.md
中的链接 /guide/README
会被渲染为 /v2/guide/README
。
组件中获取当前版本
在组件中,你可以通过 useVersion
获取当前版本,比如:
import { useVersion } from 'rspress/runtime';
export default () => {
const version = useVersion();
return <div>当前版本:{version}</div>;
};
仅搜索当前版本
可以配置 search.versioned
来仅搜索当前版本的文档。
rspress.config.ts
import { defineConfig } from 'rspress/config';
export default defineConfig({
multiVersion: {
default: 'v1',
versions: ['v1', 'v2'],
},
search: {
versioned: true,
},
});