如何利用customize-cra,修改cra中plugin的默認(rèn)配置

cra(create-react-app)中定義了許多默認(rèn)的插件配置,有時(shí)候需要根據(jù)業(yè)務(wù)需求對(duì)這些配置項(xiàng)進(jìn)行修改.
customize-cra是一款非常方便的cra定制插件,在config-overrides.js文件里可以修改cra的配置項(xiàng)。

以下步驟均在config-overrides.js文件內(nèi)進(jìn)行

  1. 定義replaceConfig()方法,并在oveerride中使用
module.exports = {
    webpack: override(
        ...,
        replaceConfig(),
        ...,
    )
}
  1. 在replaceConfig里可以拿到config對(duì)象,在這里可以寫一系列的方法對(duì)config進(jìn)行修改
// 在這里修改cra默認(rèn)的插件配置項(xiàng)
const replaceConfig = () => (config) => {
    if (process.env.NODE_ENV === 'production') {
        replaceXXXPluginConfig(config)
    }
    // 需要返回config對(duì)象
    return config;
};
  1. 在replaceConfig里使用replaceXXXPluginConfig修改某個(gè)Plugin的配置項(xiàng)
function replaceXXXPluginConfig(config){
    const plugin_name = 'xxx'
    // 通過名稱找到該plugin
    const plugin = config.plugins.find(
        (p) => p.constructor.name === plugin_name,
    );
    // 修改該plugin的配置項(xiàng)
    plugin.option.xxx = 'xxxx'
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容