frontend-collective-react-dnd-scrollzone icon indicating copy to clipboard operation
frontend-collective-react-dnd-scrollzone copied to clipboard

React should *only* be a peer dependency

Open timothyarmes opened this issue 4 years ago • 3 comments

I've just upgraded to React 17, and my code is now failing due to a this error:

Uncaught Error: Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
1. You might have mismatching versions of React and the renderer (such as React DOM)
2. You might be breaking the Rules of Hooks
3. You might have more than one copy of React in the same app

Running npm ls react (as suggested here: https://reactjs.org/warnings/invalid-hook-call-warning.html) tells me that frontend-collective-react-dnd-scrollzone is pulling in React 16.

If you see more than one React, you’ll need to figure out why this happens and fix your dependency tree. For example, maybe a library you’re using incorrectly specifies react as a dependency (rather than a peer dependency).

You are specifying React as a peer dependency, but you're also specifying it directly in devDependencies. Can you please remove the direct dependency?

timothyarmes avatar Oct 22 '20 08:10 timothyarmes

npm devDependencies aren't installed when you npm install a package https://github.com/npm/npm/blob/v6.1.0/doc/files/package.json.md#devdependencies

benatshippabo avatar Jan 22 '21 02:01 benatshippabo

I have the exact same error in my application. I would also like to upgrade to react 17. What's weird is that even when I downgrade react to a compatible version, this package still pulls in its own copy.

$ npm ls react
[email protected] /client
├── [email protected] 
└─┬ [email protected]
  └─┬ [email protected]
    └── [email protected] 

kylios avatar Apr 15 '21 22:04 kylios

If using Yarn, resolutions can be used as a workaround:

  "resolutions": {
    "**/frontend-collective-react-dnd-scrollzone/react": "^17.0.2",
    "**/frontend-collective-react-dnd-scrollzone/react-dom": "^17.0.2"
  }

JCMais avatar May 02 '21 17:05 JCMais