This documentation is available as Markdown for AI agents and LLMs. See the full Markdown index or append .md to any documentation URL.
常见开发错误
开发者使用 Expo 时遇到的常见开发错误列表。
本页面列出了使用 Expo 的开发者常遇到的一些错误。对于每个错误,第一条说明了错误发生的原因,第二条提供了调试建议。如果你发现有错误应该被列在这里,我们欢迎并鼓励你创建一个 PR!
🌐 This page outlines a list of errors that are commonly encountered by developers using Expo. For each error, the first bullet provides an explanation for why the error occurs and the second bullet contains debugging suggestions. If there is an error you think belongs here, we welcome and encourage you to create a PR!
Metro 打包程序 ECONNREFUSED 127.0.0.1:19001
🌐 Metro bundler ECONNREFUSED 127.0.0.1:19001
- 错误导致无法连接到本地开发服务器。
- 运行
rm -rf .expo来清除本地状态。检查是否有防火墙或影响你当前网络连接的代理。
Module AppRegistry 不是已注册的可调用模块(调用 runApplication)
🌐 Module AppRegistry is not a registered callable module (calling runApplication)
- 代码中的错误导致 JavaScript 包无法在启动时执行。
- 试着运行
npx expo start --no-dev --minify来在本地重现生产环境的 JS 包。如果可以的话,把你的设备连接上,然后通过 Android Studio 或 Xcode 查看设备日志。设备日志里包含更多详细的堆栈信息和其他信息。检查一下你的 Babel 配置是否有任何改动或错误。在一些罕见的情况下,这个问题可能是由于 Metro JavaScript 压缩器和你应用中的某些代码不兼容造成的。
NPM,呃!在$PATH中找不到任何git二进制文件
🌐 npm ERR! No git binary found in $PATH
- 要么你没有安装 git,要么它在你的
$PATH中配置不正确。 - 如果你还没有安装 git,请先安装。否则,请根据你的操作系统查看如何在你的
$PATH中设置它。
XX.X.X 不是有效的 SDK 版本
🌐 XX.X.X is not a valid SDK version
- 你正在运行的 SDK 版本已被弃用,不再受支持。
- 将你的项目升级到支持的 SDK 版本。如果你正在使用支持的版本但仍看到此消息,你需要更新你的 Expo Go 应用。
React Native 版本不匹配
🌐 React Native version mismatch
- 在你的终端中运行的开发服务器打包了与你的设备或模拟器中的应用不同版本的 React Native。
- 通过检查你的 app.json 和 package.json 中的版本来对齐你的 react-native 版本
应用尚未注册
🌐 Application has not been registered
- 你的应用的原生部分和 JS 部分中注册的 AppKey 不匹配。
- 将你的 AppKey 与项目的本地端对齐。
应用未按预期运行
🌐 Application not behaving as expected