跳至主要内容

入门

CRACO 有一个优秀的插件 API。您可以查看 社区维护的插件 的列表或开发您自己的插件。

开发插件

CRACO 提供了许多 钩子实用程序函数,以便轻松进行插件开发。插件使用四个钩子(所有钩子都是可选的)进行构建

craco-example-plugin.js
module.exports = {
overrideCracoConfig: ({ cracoConfig, pluginOptions, context }) => {
/* ... */
return cracoConfig;
},

overrideWebpackConfig: ({
webpackConfig,
cracoConfig,
pluginOptions,
context,
}) => {
/* ... */
return webpackConfig;
},

overrideDevServerConfig: ({
devServerConfig,
cracoConfig,
pluginOptions,
context,
}) => {
/* ... */
return devServerConfig;
},

overrideJestConfig: ({ jestConfig, cracoConfig, pluginOptions, context }) => {
/* ... */
return jestConfig;
},
};
注释

请注意,所有钩子只接受一个对象作为参数。上面的轮廓解构每个对象。

重要

所有函数都必须返回更新后的配置对象。

通过查看 钩子 文档开始。