如何修复反应导航/本机下载错误 - 需要修复

问题描述 投票:0回答:1

感谢您花时间阅读本文。

发生的情况是,我正在尝试将堆栈导航器用于 CLI React Native 项目,但我认为我无法下载 React-navigation 包。当我在 Visual Studio 终端内使用命令 npm install react-navigation/native 时,我收到以下消息:

npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve   
npm ERR! 
npm ERR! While resolving: [email protected]
npm ERR! Found: @react-navigation/[email protected]
npm ERR! node_modules/@react-navigation/native
npm ERR!   peer @react-navigation/native@"^6.0.0" from @react-navigation/[email protected]
npm ERR!   node_modules/@react-navigation/elements
npm ERR!     @react-navigation/elements@"^1.3.4" from @react-navigation/[email protected]
npm ERR!     node_modules/@react-navigation/native-stack
npm ERR!       @react-navigation/native-stack@"^6.7.0" from the root project
npm ERR!   peer @react-navigation/native@"^6.0.0" from @react-navigation/[email protected]
npm ERR!   node_modules/@react-navigation/native-stack
npm ERR!     @react-navigation/native-stack@"^6.7.0" from the root projectnpm ERR!   1 more (the root project)
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! @react-navigation/native@"react-navigation/native" from the root 
project
npm ERR!
npm ERR! Conflicting peer dependency: @react-navigation/[email protected]
npm ERR! node_modules/@react-navigation/core
npm ERR!   peer @react-navigation/core@"^3.0.0" from @react-navigation/[email protected]
npm ERR!   node_modules/@react-navigation/native
npm ERR!     @react-navigation/native@"react-navigation/native" from the root project
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:\Users\sergi\AppData\Local\npm-cache\eresolve-report.txt for a full report.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\sergi\AppData\Local\npm-cache\_logs\2022-08-20T20_17_39_891Z-debug-0.log 

所以我尝试在 Windows 终端内使用 $ npx react-native start 重新启动 Metro,它发送:

 BUNDLE  ./index.js

error: Error: Unable to resolve module react-navigation/native from C:\Users\sergi\projects\Pup\src\screens\SignInScreen\SignInScreen.js: react-navigation/native could not be found within the project or in these directories:
  node_modules
   5 | import CustomButton from '../../components/CustomButton';
   6 | import SocialSignInButtons from '../../components/SocialSignInButtons';
>  7 | import {useNavigation} from 'react-navigation/native';
     |                              ^
   8 | import {useForm, Controller} from 'react-hook-form';
   9 |
  10 | const SignInScreen = () => {
    at ModuleResolver.resolveDependency (C:\Users\sergi\Projects\Pup\node_modules\metro\src\node-haste\DependencyGraph\ModuleResolution.js:158:15)
    at DependencyGraph.resolveDependency (C:\Users\sergi\Projects\Pup\node_modules\metro\src\node-haste\DependencyGraph.js:231:43)
    at Object.resolve (C:\Users\sergi\Projects\Pup\node_modules\metro\src\lib\transformHelpers.js:129:24)
    at resolve (C:\Users\sergi\Projects\Pup\node_modules\metro\src\DeltaBundler\traverseDependencies.js:396:33)
    at C:\Users\sergi\Projects\Pup\node_modules\metro\src\DeltaBundler\traverseDependencies.js:412:26
    at Array.reduce (<anonymous>)
    at resolveDependencies (C:\Users\sergi\Projects\Pup\node_modules\metro\src\DeltaBundler\traverseDependencies.js:411:33)
    at processModule (C:\Users\sergi\Projects\Pup\node_modules\metro\src\DeltaBundler\traverseDependencies.js:140:31)
    at async addDependency (C:\Users\sergi\Projects\Pup\node_modules\metro\src\DeltaBundler\traverseDependencies.js:230:18)
    at async Promise.all (index 1)
 BUNDLE  ./index.js

error: Error: Unable to resolve module react-navigation/native from C:\Users\sergi\projects\Pup\src\screens\SignInScreen\SignInScreen.js: react-navigation/native could not be found within the project or in these directories:
  node_modules
   5 | import CustomButton from '../../components/CustomButton';
   6 | import SocialSignInButtons from '../../components/SocialSignInButtons';
>  7 | import {useNavigation} from 'react-navigation/native';
     |                              ^
   8 | import {useForm, Controller} from 'react-hook-form';
   9 |
  10 | const SignInScreen = () => {
    at ModuleResolver.resolveDependency (C:\Users\sergi\Projects\Pup\node_modules\metro\src\node-haste\DependencyGraph\ModuleResolution.js:158:15)
    at DependencyGraph.resolveDependency (C:\Users\sergi\Projects\Pup\node_modules\metro\src\node-haste\DependencyGraph.js:231:43)
    at Object.resolve (C:\Users\sergi\Projects\Pup\node_modules\metro\src\lib\transformHelpers.js:129:24)
    at resolve (C:\Users\sergi\Projects\Pup\node_modules\metro\src\DeltaBundler\traverseDependencies.js:396:33)
    at C:\Users\sergi\Projects\Pup\node_modules\metro\src\DeltaBundler\traverseDependencies.js:412:26
    at Array.reduce (<anonymous>)
    at resolveDependencies (C:\Users\sergi\Projects\Pup\node_modules\metro\src\DeltaBundler\traverseDependencies.js:411:33)
    at processModule (C:\Users\sergi\Projects\Pup\node_modules\metro\src\DeltaBundler\traverseDependencies.js:140:31)
    at async addDependency (C:\Users\sergi\Projects\Pup\node_modules\metro\src\DeltaBundler\traverseDependencies.js:230:18)
    at async Promise.all (index 1) 

我还附上了模拟器错误消息中的图像。

我从其他堆栈答案中尝试过的是:

  1. 删除你的package-lock.json

  2. 删除您的node_modules文件夹

  3. 再次尝试 npm install


enter image description here

reactjs react-native npm navigation stack-navigator
1个回答
0
投票
  1. 删除你的node_modules文件夹
  2. npm i 或纱线
  3. expo start -c 或 npx react-native start --reset-cache

您可以参考的文档: https://reactnavigation.org/docs/troubleshooting/

© www.soinside.com 2019 - 2024. All rights reserved.