我需要弄清楚如何为特定的webpack配置为不同的包添加别名。我试图解决的问题是VictoryJS库。(https://formidable.com/open-source/victory/)。我在React Native项目中使用React Native Web,所以当我在设备/仿真器上启动项目时,它可以很好地工作,因为它可以引用适当的包'victory‘,但当在web视图中打开时,它不能使用’victory‘,它需要使用’view‘,否则项目将崩溃。
我相信我需要做的是创建新的webpack配置,它要么为web的web版本设置别名,要么包含两个版本,但不包括本机版本。在webpack的配置中,我该怎么做呢?
发布于 2020-10-11 06:40:37
问得好,凯文,你可以通过使用react-app-rewired并在项目的根目录中添加一个config-overrides.js来实现这一点。
文件内容如下:
/* eslint-disable import/no-extraneous-dependencies */
// God bless this absolute gent
// https://github.com/webpack/webpack/issues/4039#issuecomment-686158264
// used by react-app-rewired
module.exports = {
webpack(config, env) {
config.resolve.alias['victory-native'] = 'victory';
return config;
},
};这个URL https://github.com/webpack/webpack/issues/4039#issuecomment-686158264指向了一个非常有用的评论,它有一个用于react-native-web的样板config-overrides.js。
https://stackoverflow.com/questions/62179785
复制相似问题