我有一个使用以下平台的 React Native 项目:Web、IOS、Android、Windows、MacO。
如果我的 React Native 版本低于 0.70.0,我有两个软件包不允许 Android 构建。我无法升级我的 RN 版本。
具体来说,这些包是:react-native-worklets-core和react-native-vision-camera。
为了继续开发,我将上述模块的假版本复制到我的 node_modules 文件夹中,但这显然是一个糟糕的方法,并且不是我可以保留在我的项目中的东西。
这是我的 package.json 文件中的代码,供您参考以帮助理解我的问题:
"replace-vision-camera": "rm -rf ./node_modules/react-native-vision-camera && cp -R ./fake_modules/react-native-vision-camera ./node_modules/react-native-vision-camera",
"replace-worklets-core": "rm -rf ./node_modules/react-native-worklets-core && cp -R ./fake_modules/react-native-worklets-core ./node_modules/react-native-worklets-core"
所以我的问题是,如果没有这些包,我该如何构建android?它会在我的 Metro 配置文件中吗?
解决方案是在你的 RN 项目的顶层添加一个react-native.config.js,你可以禁用 android 上依赖 foo 的自动链接,内容如下:
module.exports = {
dependencies: {
"foo": {
platforms: {
android: null,
}
}
}
}