错误和警告
编辑页面
了解 Expo 项目中的 Redbox 错误和堆栈跟踪。
For the complete documentation index, see llms.txt. Use this Use this file to discover all available pages.
在使用 Expo 开发应用时,你会遇到 Redbox 错误或 Yellowbox 警告。这些日志体验由 React Native 中的 LogBox 提供。
Redbox 错误和 Yellowbox 警告
当发生致命错误,导致你的应用无法运行时,会显示 Redbox 错误。当出现可能存在的问题,并且你在发布应用前应该尽量解决它时,会显示 Yellowbox 警告。
你也可以使用 console.warn("警告消息") 和 console.error("错误消息") 自行创建警告和错误。触发 redbox 的另一种方式是抛出一个错误但不捕获它:throw Error("错误消息")。
这是使用 Expo CLI 调试 React Native 应用的简要介绍。有关深入信息,请参阅 调试。
堆栈跟踪
当你在开发过程中遇到错误时,你会看到错误消息和一个 堆栈跟踪,它是一份应用崩溃时最近调用的报告。这个堆栈跟踪会同时显示在你的终端以及 Expo Go 应用中,或者如果你创建了开发构建,也会显示在那里。
这个堆栈跟踪极其有价值,因为它能告诉你错误发生的位置。例如,在下图中,错误来自 HomeScreen.js 文件,并且是由该文件中的第 7 行引起的。
当你查看那个文件时,在第 7 行,你会看到引用了一个名为 renderDescription 的变量。错误消息说明该变量未找到,因为该变量没有在 HomeScreen.js 中声明。这是一个典型示例,说明如果你花时间去理解错误消息和堆栈跟踪,它们会有多么有帮助。
调试错误是开发过程中最令人沮丧但也最令人满足的部分之一。请记住,你从不孤单。Expo 社区以及 React 和 React Native 社区都是在你遇到困难时可供求助的优秀资源。很有可能别人也遇到过你完全相同的错误。务必阅读文档,搜索 论坛、GitHub issues 和 Stack Overflow。