Pular para o conteúdo principal
Version: Canary 🚧

Static methods

Static methods are not part of the plugin instance—they are attached to the constructor function. These methods are used to validate and normalize the plugin options and theme config, which are then used as constructor parameters to initialize the plugin instance.

validateOptions({options, validate})

Returns validated and normalized options for the plugin. This method is called before the plugin is initialized. You must return the options since they will be passed to the plugin during initialization.

options

validateOptions é chamado com options de plugin para validação e normalização.

validate

validateOptions is called with validate function which takes a Joi schema and options as the arguments, returns validated and normalized options. validate tratará automaticamente de erros e configurações de validação.

tip

Joi é recomendado para validação e normalização de opções.

To avoid mixing Joi versions, use import {Joi} from '@docusaurus/utils-validation'

Se você não usar o Joi para validação, você pode lançar um erro no caso de opções inválidas e retornar as opções em caso de sucesso.

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})

Retorna a configuração validada e normalizada para o tema.

themeConfig

validateThemeConfig é chamado com themeConfig fornecido em docusaurus.config.js para validação e normalização.

validate

validateThemeConfig is called with validate function which takes a Joi schema and themeConfig as the arguments, returns validated and normalized options. validate tratará automaticamente de erros e configurações de validação.

tip

Joi é recomendado para validação e normalização das configurações do tema.

To avoid mixing Joi versions, use import {Joi} from '@docusaurus/utils-validation'

Se você não usar Joi para a validação, você pode lançar um erro no caso de opções inválidas.

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;
}