配置
Check the docusaurus.config.js API reference for an exhaustive list of options.
Docusaurus 对配置文件有着独特见解。 我们鼓励你将站点信息集中到一处。 我们会维护这个文件的每个字段,你可以在站点的任何地方访问数据对象。
悉心维护的 docusaurus.config.js 能够让你在个性化站点的同时,帮助你、你的协作者、以及开源项目贡献者专注于文档本身。
声明语法 docusaurus.config.js
docusaurus.config.js 该文件在Node js中运行,并且应该导出以下内容:
- 一个 配置对象
- 一个 函数 用来创建配置对象
The docusaurus.config.js file supports:
Constraints:
- Required: use
export default /* your config*/(ormodule.exportsto export your Docusaurus config - Optional: use
import Lib from 'lib'(orrequire('lib')) to import Node.js packages
Docusaurus gives us the ability to declare its configuration in various equivalent ways, and all the following config examples lead to the exact same result:
export default {
title: 'Docusaurus',
url: 'https://docusaurus.io',
// your site config ...
};
module.exports = {
title: 'Docusaurus',
url: 'https://docusaurus.io',
// your site config ...
};
import type {Config} from '@docusaurus/types';
export default {
title: 'Docusaurus',
url: 'https://docusaurus.io',
// your site config ...
} satisfies Config;
const config = {
title: 'Docusaurus',
url: 'https://docusaurus.io',
// your site config ...
};
export default config;
export default function configCreator() {
return {
title: 'Docusaurus',
url: 'https://docusaurus.io',
// your site config ...
};
}
export default async function createConfigAsync() {
return {
title: 'Docusaurus',
url: 'https://docusaurus.io',
// your site config ...
};
}
Using an async config creator can be useful to import ESM-only modules (notably most Remark plugins). It is possible to import such modules thanks to dynamic imports:
export default async function createConfigAsync() {
// Use a dynamic import instead of require('esm-lib')
const lib = await import('lib');
return {
title: 'Docusaurus',
url: 'https://docusaurus.io',
// rest of your site config...
};
}
docusaurus.config.js 里会写什么?
即便你正在开发网站,你也没必要从零开始撰写 docusaurus.config.js。 所有模板都自带了一个 docusaurus.config.js,包含常见选项的默认值。
但是,深入了解配置是如何设计与实现的也会很有帮助。
从高维度来说,Docusaurus 配置可被分为这几类:
站点元数据
站点元数据包括了 title、url