config-overrides.js 中override传参设置publicPath
时间: 2023-12-10 18:05:18 浏览: 154
在 `config-overrides.js` 中,可以通过调用 `getBabelLoader` 方法获取到 babel-loader 的配置对象,然后在其中设置 `publicPath`。以下是一个示例:
```js
const { getBabelLoader } = require('customize-cra');
module.exports = function override(config, env) {
const babelLoader = getBabelLoader(config);
babelLoader.options.publicPath = 'https://your-cdn.com/';
return config;
}
```
上面的代码中,我们首先引入了 `getBabelLoader` 方法,然后通过调用该方法获取到了 babel-loader 的配置对象 `babelLoader`。接着,我们在 `babelLoader.options` 中设置了 `publicPath` 的值为 `https://your-cdn.com/`,即设置了打包后静态资源文件的路径。最后,返回修改后的 `config`。
相关问题
config-overrides.js
config-overrides.js是一个用于覆盖create-react-app默认配置的文件。它允许开发人员在不强制eject的情况下修改webpack配置。通过使用config-overrides.js,开发人员可以添加自定义webpack配置,例如添加新的loader或plugin。
config-overrides
config-overrides是一个用于修改Create React App (CRA)配置的文件。它允许你在不eject(暴露配置)的情况下,对CRA的默认配置进行自定义。通过config-overrides文件,你可以添加、删除和修改CRA的Webpack配置。
你可以使用config-overrides来修改webpack配置、添加自定义loader和plugin、修改babel配置等。这样可以更灵活地定制CRA项目的构建过程,满足特定的需求。
在使用config-overrides之前,你需要安装customize-cra这个包。然后,在项目根目录下创建一个config-overrides.js文件,并在其中编写相应的配置。
例如,你可以使用config-overrides来修改webpack配置,如下所示:
```javascript
const path = require('path');
module.exports = function override(config, env) {
// 修改output路径
config.output.path = path.join(__dirname, 'dist');
// 添加一个自定义loader
config.module.rules.push({
test: /\.txt$/,
use: 'raw-loader'
});
// 修改babel配置,支持装饰器语法
config = injectBabelPlugin(
['@babel/plugin-proposal-decorators', { legacy: true }],
config
);
return config;
};
```
以上示例中,我们修改了output的路径为项目根目录下的dist文件夹,并添加了一个处理txt文件的自定义loader。同时,我们还通过injectBabelPlugin函数将装饰器语法支持添加到了babel配置中。
这只是config-overrides的一个简单示例,你可以根据具体需求进行配置。使用config-overrides可以轻松地对Create React App进行个性化定制,而无需eject项目。
阅读全文