跳到主要内容

静态方法

静态方法不是插件实例的一部分——它们附加到构造函数。这些方法用于验证和规范化插件选项和主题配置,然后将其用作构造函数参数来初始化插件实例。

validateOptions({options, validate})

返回插件的已验证和规范化的选项。此方法在初始化插件之前调用。您必须返回选项,因为它们将在初始化期间传递给插件。

options

validateOptions 使用传递给插件以进行验证和规范化的 options 调用。

validate

validateOptions 使用 validate 函数调用,该函数采用 Joi 模式和选项作为参数,返回已验证和规范化的选项。validate 将自动处理错误和验证配置。

提示

建议使用 Joi 来验证和规范化选项。

为避免混合 Joi 版本,请使用 import {Joi} from '@docusaurus/utils-validation'

如果您不使用 Joi 进行验证,则可以在选项无效的情况下抛出错误,并在成功的情况下返回选项。

my-plugin/src/index.js
export default function myPlugin(context, options) {
return {
name: 'docusaurus-plugin',
// rest of methods
};
}

export function validateOptions({options, validate}) {
const validatedOptions = validate(myValidationSchema, options);
return validatedOptions;
}

validateThemeConfig({themeConfig, validate})

返回主题的已验证和规范化的配置。

themeConfig

validateThemeConfig 使用在 docusaurus.config.js 中提供的 themeConfig 进行验证和规范化调用。

validate

validateThemeConfig 使用 validate 函数调用,该函数采用 Joi 模式和 themeConfig 作为参数,返回已验证和规范化的选项。validate 将自动处理错误和验证配置。

提示

建议使用 Joi 来验证和规范化主题配置。

为避免混合 Joi 版本,请使用 import {Joi} from '@docusaurus/utils-validation'

如果您不使用 Joi 进行验证,则可以在选项无效的情况下抛出错误。

my-theme/src/index.js
export default function myPlugin(context, options) {
return {
name: 'docusaurus-plugin',
// rest of methods
};
}

export function validateThemeConfig({themeConfig, validate}) {
const validatedThemeConfig = validate(myValidationSchema, options);
return validatedThemeConfig;
}