Create-react-app: Module not found: Can't resolve 'react'

Created on 14 Jun 2017  路  6Comments  路  Source: facebook/create-react-app

I am currently facing this problem when I attempt to install any node package into an app created with create-react-app:

`npm WARN gentlyRm not removing /Users/user/Desktop/mobx-shopping/node_modules/espree/node_modules/.bin/acorn as it wasn't installed by /Users/user/Desktop/mobx-shopping/node_modules/espree/node_modules/acorn
npm notice created a lockfile as package-lock.json. You should commit this file.

npm WARN [email protected] requires a peer of react@^0.13.0 || ^0.14.0 || ^15.0.0 || ^16.0.0-0 but none was installed.`

Then when I run the app with npm start and it compiles, I get the following error:

 Failed to compile.
 ./src/index.js
 Module not found: Can't resolve 'react' in '/Users/user/Desktop/mobx-shopping/src'

Node version: 8.0.0
NPM version: 5.0.3
React: 15.6.0

Most helpful comment

Try removing package-lock.json, run npm install and then npm start again. Please also share your package.json file.

If it doesn't help, install an older version of npm (e.g. 3.x). 5.x is still fairly buggy and might be causing this.

I'll close because it is not an issue on our side. npm just failed to install the react module for some reason.

All 6 comments

Try removing package-lock.json, run npm install and then npm start again. Please also share your package.json file.

If it doesn't help, install an older version of npm (e.g. 3.x). 5.x is still fairly buggy and might be causing this.

I'll close because it is not an issue on our side. npm just failed to install the react module for some reason.

Removing package-lock.json and then running npm install helped me, thanks!

it worked fine for me:

{
            test: /\.scss$/,
            use: [
              require.resolve('style-loader'),
              {
                loader: "style-loader"
              }, {
                loader: "css-loader"
              }, {
                loader: "sass-loader",
                options: {
                  includePaths: ["absolute/path/a", "absolute/path/b"]
                }
              },
              {
                loader: require.resolve('postcss-loader'),
                options: {
                  // Necessary for external CSS imports to work
                  // https://github.com/facebookincubator/create-react-app/issues/2677
                  ident: 'postcss',
                  plugins: () => [
                    require('postcss-flexbugs-fixes'),
                    autoprefixer({
                      browsers: [
                        '>1%',
                        'last 4 versions',
                        'Firefox ESR',
                        'not ie < 9', // React doesn't support IE8 anyway
                      ],
                      flexbox: 'no-2009',
                    }),
                  ],
                },
              },
            ],
          }

it did not help me after removing package-lock.json i run npm install and it still install another package-lock.json and the error still remains

Same here - the error location changed, but it couldn't find react nonetheless. Incredibly weird.

Delete package-lock.json and yarn.lock.
Check if node_modules/react exists.
If it doesn't, check if react is in your package.json. If you don't have it in package.json, add it.

Run npm install (or yarn if you use it).
Check if node_modules/react exists.

If it doesn't, something's messed up with npm or Yarn on your system. Try to update either.
If that doesn't help, file a bug with them.

If you have node_modules/react but CRA app can't resolve it, please file a new issue with us.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

barcher picture barcher  路  3Comments

stopachka picture stopachka  路  3Comments

onelson picture onelson  路  3Comments

rdamian3 picture rdamian3  路  3Comments

dualcnhq picture dualcnhq  路  3Comments