在您尝试自动删除此副本之前,请听我说完。我花了一整天在谷歌上搜索并尝试了所有的方法。
我的项目是一个使用Expo的React Native应用程序。
最近,当我添加一些包以使测试正常工作时,我开始收到这个错误:
Invariant Violation: NetInfo has been removed from React Native. It can now be installed and imported from '@react-native-community/netinfo' instead of 'react-native'. See https://github.com/react-native-community/react-native-netinfo
按照人们的建议,我尝试在我的Node Modules文件夹中搜索netInfo包的任何旧式导入,但都没有。我尝试通过删除node_modules文件夹将节点模块回滚到以前的状态,并将package.json替换为我知道可以工作的较旧的设置,然后重新安装npm i。
我需要其他的东西来试试。
这是我的package.json,我知道它在过去是有效的,但无论如何都会给我带来错误
{
"main": "node_modules/expo/AppEntry.js",
"scripts": {
"start": "expo start",
"android": "expo start --android",
"ios": "expo start --ios",
"web": "expo start --web",
"eject": "expo eject"
},
"dependencies": {
"@expo/vector-icons": "^12.0.5",
"@fortawesome/fontawesome-svg-core": "^1.2.36",
"@fortawesome/free-regular-svg-icons": "^5.15.4",
"@fortawesome/free-solid-svg-icons": "^5.15.4",
"@fortawesome/react-native-fontawesome": "^0.2.7",
"@react-native-async-storage/async-storage": "^1.15.9",
"@react-navigation/native": "^6.0.2",
"@react-navigation/stack": "^6.0.7",
"@redux-offline/redux-offline": "^2.6.0-expo.0",
"expo": "^42.0.3",
"expo-app-loading": "1.1.2",
"expo-location": "~12.1.2",
"expo-sqlite": "~9.2.1",
"expo-status-bar": "~1.0.4",
"react": "16.13.1",
"react-dom": "16.13.1",
"react-native": "https://github.com/expo/react-native/archive/sdk-42.0.0.tar.gz",
"react-native-get-random-values": "^1.7.0",
"react-native-safe-area-context": "3.2.0",
"react-native-screens": "~3.4.0",
"react-native-web": "~0.13.12",
"react-redux": "^7.2.5",
"redux": "^4.1.1",
"redux-thunk": "^2.3.0",
"uuid": "^8.3.2"
},
"devDependencies": {
"@babel/core": "^7.9.0",
"eslint": "^8.1.0",
"eslint-plugin-react": "^7.26.1",
"eslint-plugin-react-native": "^3.11.0",
"redux-devtools-extension": "^2.13.9"
},
"private": true
}发布于 2021-11-05 19:53:29
最近,当我添加一些包以使测试正常工作时
由于您的代码中没有直接使用NetInfo,因此我认为您最近添加的一个包仍在尝试通过React Native访问NetInfo。
首先,您需要确定是哪个包导致了这种情况。然后将其更新为从@react-native-community/netinfo导入NetInfo的较新版本,或者完全删除该包。
发布于 2021-11-06 16:12:18
TLDR:移除Redux离线,以及它的所有导入。@redux-offline/redux-offline:"^2.6.0-expo.0",
哇,这是一天半的工作,duzy。这也很奇怪,因为我试着回到一个旧的提交并在那里重新构建,但我仍然会得到错误。因此,我一时兴起,从github下载了我的存储库,然后转到旧的提交,安装了包,它工作了!仍然不知道为什么我原来的本地回购不会。
所以我将工作提交和中断提交分开,直到我找到问题的根源,罪魁祸首是@redux-offline/redux-offline:"^2.6.0-expo.0",
我不知道为什么它会导致这个问题,也许我只是把它设置错了,无论如何我都不能让它工作,所以我暂时删除它,直到我有时间做正确的事情。
https://stackoverflow.com/questions/69858009
复制相似问题