React native Aws amplify不使用react native和expo版本36.0.0

React native Aws amplify不使用react native和expo版本36.0.0,react-native,expo,aws-amplify,react-native-community-netinfo,React Native,Expo,Aws Amplify,React Native Community Netinfo,我目前正在使用Expodk开发一个react原生应用程序,该程序应该可以在web、ios和android上运行。到目前为止,最具挑战性的部分是设置导航,我最终做到了这一点。现在,我在我的项目中添加了amplify,但每当我在任何移动设备上运行它时,项目都会停止工作,但它在web上运行得很好。我收到的错误是 NetInfo has been removed from React Native 经过多次尝试和错误,我发现错误来自aws amplify,因为它似乎仍然使用reac本地社区/netin

我目前正在使用Expodk开发一个react原生应用程序,该程序应该可以在web、ios和android上运行。到目前为止,最具挑战性的部分是设置导航,我最终做到了这一点。现在,我在我的项目中添加了amplify,但每当我在任何移动设备上运行它时,项目都会停止工作,但它在web上运行得很好。我收到的错误是

NetInfo has been removed from React Native
经过多次尝试和错误,我发现错误来自aws amplify,因为它似乎仍然使用reac本地社区/netinfo运行。只有当我从amplify导入某些内容时,才会出现错误。这是我在家里找到的

node_modules\@aws-amplify\core\lib\Util\Reachability.native.js
有人知道我如何解决这个问题吗

这是我的package.json(如果需要)

  "dependencies": {
    "@expo/vector-icons": "~10.0.0",
    "aws-amplify": "^2.2.6",
    "@react-native-community/masked-view": "0.1.5",
    "@react-navigation/bottom-tabs": "^5.0.0",
    "@react-navigation/drawer": "^5.2.0",
    "@react-navigation/native": "^5.0.0",
    "@react-navigation/stack": "^5.0.0",
    "@react-navigation/web": "~1.0.0-alpha.9",
    "expo": "~36.0.0",
    "expo-asset": "~8.0.0",
    "expo-constants": "~8.0.0",
    "expo-font": "~8.0.0",
    "expo-web-browser": "~8.0.0",
    "react": "~16.9.0",
    "react-dom": "~16.9.0",
    "react-native": "https://github.com/expo/react-native/archive/sdk-36.0.0.tar.gz",
    "react-native-gesture-handler": "~1.5.0",
    "react-native-reanimated": "^1.7.0",
    "react-native-safe-area-context": "0.6.0",
    "react-native-screens": "2.0.0-alpha.12",
    "react-native-web": "~0.11.7",
    "react-spring": "^8.0.27",
    "styled-components": "^5.0.1",
    "@aws-amplify/api": "^2.1.6",
    "@aws-amplify/pubsub": "^2.1.7",
    "@expo/samples": "^3.0.3",
    "apollo-boost": "^0.4.3",
    "apollo-cache-inmemory": "^1.6.2",
    "apollo-client": "^2.6.3",
    "apollo-link-http": "^1.5.15",
    "aws-amplify-react-native": "^3.2.2",
    "aws-appsync": "^1.7.0",
    "aws-appsync-react": "^1.2.5",
    "expo-av": "~8.0.0",
    "expo-camera": "~8.0.0",
    "expo-file-system": "~8.0.0",
    "expo-image-picker": "~8.0.1",
    "expo-permissions": "~8.0.0",
    "graphql-tag": "^2.10.1",
    "moment": "^2.20.1",
    "prop-types": "^15.7.2",
    "react-apollo": "^2.0.4",
    "react-native-datepicker": "^1.7.2",
    "react-native-deck-swiper": "^1.6.7",
    "react-native-keyboard-aware-scroll-view": "^0.9.1",
    "react-native-material-dropdown": "^0.11.1",
    "react-native-modal": "^11.3.1",
    "react-native-modal-datetime-picker": "^4.13.0",
    "react-native-modal-dropdown": "^0.6.2",
    "react-native-paper": "^2.16.0",
    "react-native-responsive-screen": "^1.4.0",
    "react-native-segmented-control-tab": "^3.4.1",
    "react-native-slideable-calendar-strip": "^0.4.0",
    "react-native-snap-carousel": "^3.8.0",
    "react-native-sound": "^0.11.0",
    "react-native-svg": "9.13.3",
    "react-native-swipe-gestures": "^1.0.3",
    "react-native-swipeable": "^0.6.0",
    "react-native-swipeout": "^2.3.3",
    "react-native-touchable-swipe": "^1.0.0",
    "react-navigation": "^4.2.2",
    "react-redux": "^7.2.0",
    "redux": "^4.0.5",
    "redux-persist": "^4.10.2",
    "redux-thunk": "^2.3.0",
    "uuid": "^3.2.1"
  },

非常感谢您的帮助。

如果有人遇到此问题,这是github上@Ashish Nanda的解决方案:

您链接的问题得到了包维护人员的回复,并说明了错误原因。 您的一个或多个依赖项可能正在从React Native core导入NetInfo。看看你的package.json,其中之一就是aws appsync react,你需要升级到2.x.x以上的任何版本。从package.json中删除aws appsync react和aws appsync,并安装最新版本以确保其高于2.x.x。然后做:

npm安装-保存@react本地社区/netinfo@4.7.0


您需要安装此特定版本,因为较新版本会随着API的更改而导致问题。

您可以尝试更新到最新版本的API。您已经对2.6.6进行了更新。同样的问题对我有效,很高兴知道。对于未来对GitHub问题感兴趣的观众,请点击此处: