首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >尝试运行React Native ios应用程序时无法修复这2个错误

尝试运行React Native ios应用程序时无法修复这2个错误
EN

Stack Overflow用户
提问于 2021-02-08 01:24:21
回答 2查看 3.4K关注 0票数 7

我在我的React Native环境中度过了一段糟糕的时光。在我一直在为之工作的小初创公司的主分支上做了一次拉动后,我无法让npx react-native run-ios工作。我试过了所有常见的疑点,比如:

代码语言:javascript
运行
复制
1. reinstall node modules from package.json
2. reinstall pod in /ios
3. reinstall cocoapods 
4. made sure to clear all caches
5. tried different versions of Node
6. reinstalled Node, NVM, Xcode, Cocoapods from the React-Native docs
7. made sure I have a .env file 
8. restarted my computer (you'd be surprised) 

我得到的错误是:

代码语言:javascript
运行
复制
Error: EISDIR: illegal operation on a directory, read
    at Object.readSync (fs.js:498:3)
    at tryReadSync (fs.js:332:20)
    at Object.readFileSync (fs.js:369:19)
    at UnableToResolveError.buildCodeFrameMessage (/Users/demiansims/Development/ColorTV/colortv-react-native/node_modules/react-native/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:304:17)
    at new UnableToResolveError (/Users/demiansims/Development/ColorTV/colortv-react-native/node_modules/react-native/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:290:35)
    at ModuleResolver.resolveDependency (/Users/demiansims/Development/ColorTV/colortv-react-native/node_modules/react-native/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:168:15)
    at DependencyGraph.resolveDependency (/Users/demiansims/Development/ColorTV/colortv-react-native/node_modules/react-native/node_modules/metro/src/node-haste/DependencyGraph.js:353:43)
    at /Users/demiansims/Development/ColorTV/colortv-react-native/node_modules/react-native/node_modules/metro/src/lib/transformHelpers.js:271:42

代码语言:javascript
运行
复制
Error: Unable to resolve module `./debugger-ui/debuggerWorker.aca173c4` from ``: 

None of these files exist:
  * debugger-ui/debuggerWorker.aca173c4(.native|.native.js|.js|.native.json|.json|.native.ts|.ts|.native.tsx|.tsx|.native.svg|.svg)
  * debugger-ui/debuggerWorker.aca173c4/index(.native|.native.js|.js|.native.json|.json|.native.ts|.ts|.native.tsx|.tsx|.native.svg|.svg)
    at ModuleResolver.resolveDependency (/Users/demiansims/Development/ColorTV/colortv-react-native-2/node_modules/react-native/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:163:15)
    at ResolutionRequest.resolveDependency (/Users/demiansims/Development/ColorTV/colortv-react-native-2/node_modules/react-native/node_modules/metro/src/node-haste/DependencyGraph/ResolutionRequest.js:52:18)
    at DependencyGraph.resolveDependency (/Users/demiansims/Development/ColorTV/colortv-react-native-2/node_modules/react-native/node_modules/metro/src/node-haste/DependencyGraph.js:287:16)
    at /Users/demiansims/Development/ColorTV/colortv-react-native-2/node_modules/react-native/node_modules/metro/src/lib/transformHelpers.js:267:42
    at /Users/demiansims/Development/ColorTV/colortv-react-native-2/node_modules/react-native/node_modules/metro/src/Server.js:1096:37
    at Generator.next (<anonymous>)
    at asyncGeneratorStep (/Users/demiansims/Development/ColorTV/colortv-react-native-2/node_modules/react-native/node_modules/metro/src/Server.js:99:24)
    at _next (/Users/demiansims/Development/ColorTV/colortv-react-native-2/node_modules/react-native/node_modules/metro/src/Server.js:119:9)
    at process._tickCallback (internal/process/next_tick.js:68:7)

通过研究上面的任何错误,我采取了上面的步骤,但似乎都不起作用。

我不是在利用世博会进行开发。我正在使用React-Native CLI。

EN

回答 2

Stack Overflow用户

发布于 2021-03-17 19:46:58

将您的节点安装更新到最新的LTS版本(现在是14.16.0),应该可以解决这个问题。

我建议使用nvm来管理您的节点版本。如果需要,这还可以帮助您快速切换版本。

只需运行nvm install --lts即可使用nvm安装最新版本的LTS

票数 0
EN

Stack Overflow用户

发布于 2021-05-25 03:43:11

好的。所以我遇到了同样的问题。

断言您的根目录中仍然有index.js。我知道这听起来很愚蠢,但是这里有人删除了index.js,我没有注意到,我得到了完全相同的错误。在重新创建index.js之后。错误已经消失了。

顺便说一句,以防这是我的index.js

代码语言:javascript
运行
复制
import whyDidYouRender from "@welldone-software/why-did-you-render";
import { registerRootComponent } from "expo";
import "react-native-gesture-handler";
import React from "react";
import { enableScreens } from "react-native-screens";

import { App } from "./src/App";
import { setup } from "./src/config";

if (process.env.NODE_ENV === "development") {
  whyDidYouRender(React, {
    trackAllPureComponents: false,
  });
}

enableScreens();
setup();

// registerRootComponent calls AppRegistry.registerComponent('main', () => App);
// It also ensures that whether you load the app in the Expo client or in a native build,
// the environment is set up appropriately
registerRootComponent(App);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66090882

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档