Search code examples
node.jsreactjsreact-nativenpmreact-native-router-flux

react-native multiple npm warn and problems and its crash my app


Here I am having a little addiction problem with reaction-native since yesterday................

enter image description here

it completely blocks me from navigating to certain screens etc. Here is a copy of package. json:

{
  "name": "test2",
  "version": "0.1.0",
  "private": true,
  "devDependencies": {
    "react-native-scripts": "1.7.0",
    "jest-expo": "^22.0.0",
    "react-test-renderer": "16.0.0-beta.5"
  },
  "main": "./node_modules/react-native-scripts/build/bin/crna-entry.js",
  "scripts": {
    "start": "react-native-scripts start",
    "eject": "react-native-scripts eject",
    "android": "react-native-scripts android",
    "ios": "react-native-scripts ios",
    "test": "node node_modules/jest/bin/jest.js --watch"
  },
  "jest": {
    "preset": "jest-expo"
  },
  "dependencies": {
    "expo": "^22.0.2",
    "mobx-react": "^4.3.4",
    "react": "16.0.0-beta.5",
    "react-native": "^0.49.5",
    "react-native-elements": "^0.18.2",
    "react-native-keyboard-aware-scroll-view": "^0.4.1",
    "react-native-router-flux": "4.0.0-beta.23",
    "react-navigation": "^1.0.0-beta.19"
  }
}

How to install these outbuildings? Where can I fix my problem if you've already had it, see?

thx!


Solution

  • You haven't installed the dependencies in your app. Either running

    npm install
    

    Has produced errors for those npm libraries, or it simply hasn't been run. Try running it, and if it still doesn't work, take a look at the contents of ./npm-debug.log for error messages related to it.

    ETA: Looking closer, it seems that several of your dependencies require peers of specific versions of react, but you have a different version of react installed.

    Are you using react@16.0.0-beta for a specific reason? Things like mobx are looking for react 13/14/15/16, but not 16b. I'd try this:

    npm remove -S react
    npm install -S react
    

    and see if that works. If you were using the React beta for a reason, you may struggle to get these to talk to each other.