预设
预设是插件及主题的合集。
#
使用预设预设通常为 npm 软件包,所以您可以像其他 npm 包一样使用 npm 安装。
- npm
- Yarn
npm install --save docusaurus-preset-name
yarn add docusaurus-preset-name
然后,将其添加到站点中 docusaurus.config.js
的 presets
选项:
module.exports = { // ... presets: ['@docusaurus/preset-xxxx'],};
要加载您本地目录的预设,请指定如何进行解析:
const path = require('path');
module.exports = { // ... presets: [path.resolve(__dirname, '/path/to/docusaurus-local-presets')],};
#
预设 -> 主题及插件Presets in some way are a shorthand function to add plugins and themes to your Docusaurus config. 举个例子,您可以指定包含下列主题及插件的预设:
module.exports = function preset(context, opts = {}) { return { themes: [ require.resolve('@docusaurus/themes-cool'), require.resolve('@docusaurus/themes-bootstrap'), ], plugins: [require.resolve('@docusaurus/plugin-blog')], };};
然后在您的 Docusaurus 配置中,您可转而设置使用上文所述的预设:
module.exports = { // ... presets: ['@docusaurus/preset-my-own'],};
这与下列配置等同:
module.exports = { themes: ['@docusaurus/themes-cool', '@docusaurus/themes-bootstrap'], plugins: ['@docusaurus/plugin-blog'],};
此方法非常适合需要整合部分插件及主题的情况。
#
官方预设@docusaurus/preset-classic
#
The classic preset that is usually shipped by default to new Docusaurus website. 这是一系列插件及主题。
主题 | 插件 |
---|---|
@docusaurus/theme-classic | @docusaurus/plugin-content-docs |
@docusaurus/theme-search-algolia | @docusaurus/plugin-content-blog |
@docusaurus/plugin-content-pages | |
@docusaurus/plugin-debug | |
@docusaurus/plugin-google-analytics | |
@docusaurus/plugin-google-gtag | |
@docusaurus/plugin-sitemap |
要为插件单独设置选项,您需要为其提供单独的字段,如为 @docusaurus/theme-classic
提供 customCss
选项,并按如下所示的方式传递至预设字段中:
module.exports = { presets: [ [ '@docusaurus/preset-classic', { // 调试在开发环境中默认为 true,而在生产环境中为 false debug: undefined, // 将传递至 @docusaurus/theme-classic。 theme: { customCss: [require.resolve('./src/css/custom.css')], }, // 将传递至 @docusaurus/plugin-content-docs(设置为 false 以禁用) docs: {}, // 将传递至 @docusaurus/plugin-content-blog(设置为 false 以禁用) blog: {}, // 将传递至 @docusaurus/plugin-content-pages(设置为 false 以禁用) pages: {}, // 将传递至 @docusaurus/plugin-content-sitemap(设置为 false 以禁用) sitemap: {}, }, ], ],};
除了这些插件及主题之外,@docusaurus/theme-classic
还为 @docusaurus/plugin-content-blog
和 @docusaurus/plugin-content-docs
添加了 remark-admonitions
Remark 插件。
admonitions
键值将作为 options 选项传递至 remark-admonitions
。 传递 false
将防止插件添加到 MDX 中。
module.exports = { presets: [ [ '@docusaurus/preset-classic', { docs: { // remark-admonitions 选项 admonitions: {}, }, }, ], ],};
@docusaurus/preset-bootstrap
#
使用 Bootstrap 样式的另一款预设。
主题 | 插件 |
---|---|
@docusaurus/theme-bootstrap | @docusaurus/plugin-content-docs |
@docusaurus/plugin-content-blog | |
@docusaurus/plugin-content-pages | |
@docusaurus/plugin-debug |
要为插件单独设置选项,您需要为其提供单独的字段,如为 @docusaurus/theme-bootstrap
提供 docs
选项,并按如下所示的方式传递至预设字段中:
module.exports = { presets: [ [ '@docusaurus/preset-bootstrap', { // 调试在开发环境中默认为 true,而在生产环境中为 false debug: undefined, // 将传递至 @docusaurus/plugin-content-docs(设置为 false 以禁用) docs: {}, // 将传递至 @docusaurus/plugin-content-blog(设置为 false 以禁用) blog: {}, }, ], ],};
caution
此预设仍在开发中。