The development server returned response error code : 500 Unable to resolve module XXX The module

这是我学习RN以来遇到的最恶心的问题,没有之一。先上图

                                                            The development server returned response error code : 500 Unable to resolve module XXX The module_第1张图片

我把上面的报错给整理下来了

Error: Unable to resolve module `./index` from `E:\ReactWord\WorkDemo\node_modules\react-native\scripts/.`: The module `./index` could not be found from `E:\ReactWord\WorkDemo\node_modules\react-native\scripts/.`. Indeed, none of these files exist:
  * `E:\ReactWord\WorkDemo\node_modules\react-native\scripts\index(.native||.android.js|.native.js|.js|.android.json|.native.json|.json|.android.ts|.native.ts|.ts|.android.tsx|.native.tsx|.tsx)`
  * `E:\ReactWord\WorkDemo\node_modules\react-native\scripts\index\index(.native||.android.js|.native.js|.js|.android.json|.native.json|.json|.android.ts|.native.ts|.ts|.android.tsx|.native.tsx|.tsx)`
    at ModuleResolver.resolveDependency (E:\ReactWord\WorkDemo\node_modules\metro\src\node-haste\DependencyGraph\ModuleResolution.js:163:15)
    at ResolutionRequest.resolveDependency (E:\ReactWord\WorkDemo\node_modules\metro\src\node-haste\DependencyGraph\ResolutionRequest.js:52:18)
    at DependencyGraph.resolveDependency (E:\ReactWord\WorkDemo\node_modules\metro\src\node-haste\DependencyGraph.js:283:16)
    at E:\ReactWord\WorkDemo\node_modules\metro\src\lib\transformHelpers.js:261:42
    at Server. (E:\ReactWord\WorkDemo\node_modules\metro\src\Server.js:1038:41)
    at Generator.next ()
    at asyncGeneratorStep (E:\ReactWord\WorkDemo\node_modules\metro\src\Server.js:99:24)
    at _next (E:\ReactWord\WorkDemo\node_modules\metro\src\Server.js:119:9)

这个报错的意思是,我的某一个文件找不到。可是,这是我新建的一个项目啊。网上怎么找都解决不了。但是,最终我看到了一篇帖子,https://stackoverflow.com/questions/55149658/error-unable-to-resolve-module-index-from-node-modules-react-native-scrip。

https://github.com/facebook/react-native/issues/23908 这篇是真正解决我问题的一篇帖子, github上的

这篇论坛帖子已经可以解决大问题了。我先修改了node_modules \ react-native \ scripts \ launchPackager.bat文件。

// delete this line  删除这一行
node "%~dp0..\cli.js" start 

// Add this line  添加这一行
node "%~dp0..\cli.js" start --projectRoot ../../../ 

pause
exit

我是将上面哪一行原本的代码删除掉,替换成下面这一行。然后将原来的命令行工具窗口全部关闭,新打开命令行窗口分别执行以下命令

react-native start -- --reset-cache

然后另外开一个新的命令行窗口,执行以下命令

react-native run-android

第一行命令是开启你的node服务,第二行则就是运行你的工程。

还有一种解决方式,不过我没有成功,也许你就可以成功,二选一

在\ node_modules \ @react-native-community \ cli \ build \ commands \ runAndroid \ runAndroid.js中编辑

//这是你原本的代码
const procConfig = {
  cwd:process.cwd()
};

然后对你原本的代码进行修改

const procConfig = {
  // delete this line  将这一行删除
  cwd: scriptsDir

  // add this line     添加这一行
  cwd: process.cwd()
};

同上,把添加的替换掉要删除的就可以了,然后操作如上,开启命令窗口,运行项目。

我的问题解决了。相信你如果遇到此类问题一定可以解决,不要灰心,功夫不负有心人。

你可能感兴趣的:(The development server returned response error code : 500 Unable to resolve module XXX The module)