私の知る限り、Docusaurus はカスタマイズされたページをサポートしていますが、1 つの Docusaurus プロジェクトに 2 つのドキュメントを含める方法はありますか?
オリジナルの Navbar 項目には次のものがあります:
- ドキュメント
- ブログ
- ...
次のようなものがほしいです:
- ドキュメント 1
- ドキュメント 2
- ブログ
- ...
1 つのドキュメント内に多数のサブフォルダーを作成できることはわかっていますが、何らかの理由で、ドキュメントに簡単にアクセスできる 2 つのドキュメント構造が必要です。
Docusaurus が現在この機能を提供できない場合、他のドキュメント フレームワークがこの機能を提供しているかどうかをお聞きしたいです。
ベストアンサー1
使用する必要があるのはプラグインコンテンツドキュメント。
まず、、、などの他のフォルダーをdocs
作成します。docs
docs-api
docs-system
(1)ファイル内でdocusaurus.config.js
、「デフォルト」ドキュメントを構成します。
(module.exports = { // start of the module.export declaration
[…]
presets: [
[
'@docusaurus/preset-classic',
{
docs: {
routeBasePath: 'docs',
path: 'docs',
sidebarPath: require.resolve('./sidebars.js'),
lastVersion: 'current',
onlyIncludeVersions: ['current'],
},
theme: {
customCss: require.resolve('./src/css/custom.css'),
},
},
],
],
[…]
}); // end of the module-export declaration
(2)さて、魔法!: 同じファイルで、他のドキュメントを設定します。
(module.exports = { // start of the module.export declaration
[…]
plugins: [
[…]
[
'@docusaurus/plugin-content-docs',
{
id: 'docs-api',
path: 'docs-api',
routeBasePath: 'docs-api',
sidebarPath: require.resolve('./sidebars.js'),
},
],
[
'@docusaurus/plugin-content-docs',
{
id: 'docs-system',
path: 'docs-system',
routeBasePath: 'docs-system',
sidebarPath: require.resolve('./sidebars.js'),
},
],
],
[…]
}); // end of the module-export declaration
(3)おそらく、これらのドキュメントを NavBar に表示したいと思いませんか? それで追加しましょう!
(module.exports = { // start of the module.export declaration
[…]
navbar: {
hideOnScroll: true,
title: 'your title',
logo: {
alt: '',
src: 'img/favicon.ico',
},
items: [
{
to: '/docs/Intro', // ./docs/Intro.md
label: 'Docs Title',
position: 'left',
activeBaseRegex: `/docs/`,
},
{
to: '/docs-api/Intro', // ./docs-api/Intro.md
label: 'API',
position: 'left',
activeBaseRegex: `/docs-api/`,
},
{
to: '/docs-system/Introducao', // ./docs-system/Intro.md
label: 'My System',
position: 'left',
activeBaseRegex: `/docs-system/`,
},
],
},
[…]
}); // end of the module-export declaration
重要
場合によっては、変更してdocusaurus.config.js
も「動作」しなくなることがあります。その場合は、docusaurus を閉じてservice
(ターミナル/Power Shell で Ctrl+C を押すだけ)、再起動してください。これを事前に知っていれば、数時間を節約できたでしょう。
plugin-content-docs プラグインをお持ちでない場合は、インストールしてください:
npm をインストール --save @docusaurus/plugin-content-docs
ロードマップ
これを理解するのに苦労しました。私がしたのは、docusaurus プロジェクト全体をダウンロードし、Web サイト部分を取得し、不要なものをすべて削除して、これが得られたものです。
参考文献(2022/03/02更新)