安装时反应弹簧错误

2cl*_*ick 2 npm reactjs npm-install react-spring

嗨,我有这个问题,如果我想将 react-spring 安装到我的 React 项目中,它只会弹出一堆依赖项错误和警告,我不知道该怎么办。我试图检查 react-spring 的文档,但找不到任何东西。我在stackoverflow上检查了几页,但仍然没有找到任何有用的东西。有人可以帮忙吗?

npm WARN ERESOLVE overriding peer dependency
npm WARN Found: react@17.0.2
npm WARN node_modules/react-spring/node_modules/react
npm WARN   peer react@">=16.8" from @react-spring/konva@9.0.0
npm WARN   node_modules/react-spring/node_modules/@react-spring/konva
npm WARN     @react-spring/konva@"^9.0.0" from react-spring@9.0.0
npm WARN     node_modules/react-spring
npm WARN
npm WARN Could not resolve dependency:
npm WARN peer react@"16.8.x" from react-konva@16.8.6
npm WARN node_modules/react-spring/node_modules/react-konva
npm WARN   peer react-konva@">=16.8" from @react-spring/konva@9.0.0
npm WARN   node_modules/react-spring/node_modules/@react-spring/konva
npm WARN ERESOLVE overriding peer dependency
npm WARN Found: react@17.0.2
npm WARN node_modules/react-spring/node_modules/react
npm WARN   peer react@">=16.8" from @react-spring/konva@9.0.0
npm WARN   node_modules/react-spring/node_modules/@react-spring/konva
npm WARN     @react-spring/konva@"^9.0.0" from react-spring@9.0.0
npm WARN     node_modules/react-spring
npm WARN
npm WARN Could not resolve dependency:
npm WARN peer react@"^16.0.0" from react-dom@16.8.6
npm WARN node_modules/react-spring/node_modules/react-dom
npm WARN   peer react-dom@"16.8.x" from react-konva@16.8.6
npm WARN   node_modules/react-spring/node_modules/react-konva
npm WARN ERESOLVE overriding peer dependency
npm WARN Found: konva@7.2.5
npm WARN node_modules/konva
npm WARN   peer konva@">=2.6" from @react-spring/konva@9.0.0
npm WARN   node_modules/react-spring/node_modules/@react-spring/konva
npm WARN     @react-spring/konva@"^9.0.0" from react-spring@9.0.0
npm WARN     node_modules/react-spring
npm WARN
npm WARN Could not resolve dependency:
npm WARN peer konva@"^3.2.3" from react-konva@16.8.6
npm WARN node_modules/react-spring/node_modules/react-konva
npm WARN   peer react-konva@">=16.8" from @react-spring/konva@9.0.0
npm WARN   node_modules/react-spring/node_modules/@react-spring/konva
npm WARN ERESOLVE overriding peer dependency
npm WARN While resolving: react-spring@9.0.0
npm WARN Found: react-dom@17.0.2
npm WARN node_modules/react-dom
npm WARN   peerOptional react-dom@">=17.0" from @react-three/fiber@6.0.1
npm WARN   node_modules/@react-three/fiber
npm WARN     peer @react-three/fiber@">=6.0" from @react-spring/three@9.0.0
npm WARN     node_modules/@react-spring/three
npm WARN
npm WARN Could not resolve dependency:
npm WARN peerOptional react-dom@">=17.0" from @react-three/fiber@6.0.1
npm WARN node_modules/@react-three/fiber
npm WARN   peer @react-three/fiber@">=6.0" from @react-spring/three@9.0.0
npm WARN   node_modules/@react-spring/three
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! Found: react@17.0.1
npm ERR! node_modules/react
npm ERR!   peer react@"*" from @testing-library/react@11.2.5
npm ERR!   node_modules/@testing-library/react
npm ERR!     @testing-library/react@"^11.2.5" from the root project
npm ERR!   peer react@"17.0.1" from react-dom@17.0.1
npm ERR!   node_modules/react-dom
npm ERR!     peer react-dom@"*" from @testing-library/react@11.2.5
npm ERR!     node_modules/@testing-library/react
npm ERR!       @testing-library/react@"^11.2.5" from the root project
npm ERR!     peer react-dom@">=16.0.0" from react-visibility-sensor@5.1.1
npm ERR!     node_modules/react-visibility-sensor
npm ERR!       react-visibility-sensor@"^5.1.1" from the root project
npm ERR!     1 more (the root project)
npm ERR!   4 more (react-scripts, react-visibility-sensor, ...)
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer react@"^17.0.2" from react-reconciler@0.26.2
npm ERR! node_modules/@react-three/fiber/node_modules/react-reconciler
npm ERR!   react-reconciler@"^0.26.2" from @react-three/fiber@6.0.1
npm ERR!   node_modules/@react-three/fiber
npm ERR!     peer @react-three/fiber@">=6.0" from @react-spring/three@9.0.0
npm ERR!     node_modules/@react-spring/three
npm ERR!       @react-spring/three@"^9.0.0" from react-spring@9.0.0
npm ERR!       node_modules/react-spring
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
npm ERR! See C:\...\AppData\Local\npm-cache\eresolve-report.txt for a full report.

npm ERR! A complete log of this run can be found in:
Run Code Online (Sandbox Code Playgroud)

小智 7

有同样的问题,这个建议修复了安装错误。尽管如此,仍然没有尝试使用它。基本上,我们应该添加

"peerDependencies": {
  "react-spring": "^8.x"
}
Run Code Online (Sandbox Code Playgroud)

到 package.json 文件

  • 我认为这不是正确的答案。这可能与 npm7 要求所有同行部门都在项目中有关。 (2认同)

Jos*_*osh 5

问题在于 npm7 需要安装 peer deps。这是 npm7 的一个特性,而不是一个错误。react-spring是库的全局包,因此包含我们所有的目标。除非你真的是这样做需要一个应用程序zDogkonva等我将安装你以后的特定目标。

npm install @react-spring/web/* 可以替换为我们支持的任何目标,有关更多信息,请参阅文档