Node.js 在需要冲突版本的项目中,如何正确解决NPM依赖关系?

Node.js 在需要冲突版本的项目中,如何正确解决NPM依赖关系?,node.js,reactjs,react-native,npm,react-native-navigation,Node.js,Reactjs,React Native,Npm,React Native Navigation,我正在尝试使用说明为react native navigation构建游乐场应用程序。简单的npm安装失败,因为对等依赖项具有react:“*”和react native:“*”,所以今天(2021年1月)npm尝试安装react@17.0.1,但也尝试安装react-native@0.63.4,这需要react@16.13.1。我得到以下错误: npm ERR! While resolving: react-native-navigation@7.7.0 npm ERR! Found: rea

我正在尝试使用说明为
react native navigation
构建游乐场应用程序。简单的
npm安装
失败,因为对等依赖项具有
react:“*”
react native:“*”
,所以今天(2021年1月)npm尝试安装
react@17.0.1
,但也尝试安装
react-native@0.63.4
,这需要
react@16.13.1
。我得到以下错误:

npm ERR! While resolving: react-native-navigation@7.7.0
npm ERR! Found: react@17.0.1
npm ERR! node_modules/react
npm ERR!   peer react@"*" from the root project
...
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer react@"16.13.1" from react-native@0.63.4
npm ERR! node_modules/react-native
npm ERR!   peer react-native@"*" from the root project
npm ERR!   peer react-native@">=0.59" from @react-native-community/datetimepicker@2.6.2
npm ERR!   node_modules/@react-native-community/datetimepicker
npm ERR!
然后我试图通过安装
react@16.13.1
在我的根项目中,希望NPM能够检测到该版本并将其用作对等依赖项,但结果却是
@react native community/datetimepicker@2.6.2
取决于
反应本机windows@^0.6.20
,后者取决于
react@16.11.0
,给我这个错误:

npm ERR! Found: react@16.13.1
npm ERR! node_modules/react
npm ERR!   dev react@"16.13.1" from the root project
...
npm ERR! Could not resolve dependency:
npm ERR! peer react@"16.11.0" from react-native-windows@0.62.20
npm ERR! node_modules/@react-native-community/datetimepicker/node_modules/react-native-windows
npm ERR!   optional react-native-windows@"^0.62.0-0" from @react-native-community/datetimepicker@2.6.2
npm ERR!   node_modules/@react-native-community/datetimepicker
npm ERR!     dev @react-native-community/datetimepicker@"^2.5.0" from the root project
npm ERR!     1 more (react-native-ui-lib)
npm ERR!

我怎样才能弄清这件事的真相?我希望一切都能与
npm安装一起工作
。安装项目的正确方法是什么,或者在启动项目之前经常调试依赖冲突是常见的吗?

事实证明,我使用的是node 15.0.x,它显然太新了。降级到14.15.1有效。

事实证明,我使用的节点15.0.x显然太新了。降级到14.15.1有效。

我也在使用节点15.0.x。降级到14.x.x有效。

我也在使用节点15.0.x。降级到14.x.x有效。

我尝试了,但没有收到任何错误。我尝试了,但没有收到任何错误。选择一个即使OP回答了他自己的问题也能解决问题的答案。选择一个即使OP回答了他自己的问题也能解决问题的答案。