在应用模拟器中运行React Native应用时,如何对其进行调试?
在应用模拟器中运行React Native应用时,如何对其进行调试?
Cmd+M
。 - flaky要调试 React 应用程序的 JavaScript 代码,请按照以下步骤进行:
Command + D
,会打开一个网页,其地址为 http://localhost:8081/debugger-ui。(目前仅支持 Chrome)或使用 Shake Gesture
(摇晃手势)。Command + Option + I
打开 Chrome 开发者工具,或通过 View
-> Developer
-> Developer Tools
打开它。安装 Google Chrome 的 React Developer Tools 扩展。这将允许您在开发者工具打开时选择 React
选项卡以导航视图层次结构。
要激活实时重新加载,请按照以下步骤进行:
Control + Command + Z
。Enable/Disable Live Reload
、Reload
和 Enable/Disable Debugging
选项。对于一款Android应用,如果你使用的是Genymotion模拟器,你可以通过按下 CMD + m
来切换菜单,但你可能需要在菜单中启用此功能。
CMD + m
点击在Chrome中调试(debug in chrome)启用它cmd + m
或者 ctrl + m
,然后在模拟器弹出的窗口中选择 远程开始调试
。 - MewX除了其他答案之外,您可以使用调试器语句来调试React Native。
例如:
debugger; //breaks execution
这个操作需要您打开Chrome开发者工具
尝试使用此程序:https://github.com/jhen0409/react-native-debugger
支持的操作系统有:windows
、osx
和 linux
。
它支持:react native
和 redux
。
您还可以检查虚拟组件树并修改在应用中反映出来的样式。
console.log(url)
,但是我找不到输出在哪里。 - QuarK在 Debian 8 (Jessie) 上调试 React-Native 0.40.0 可以通过在 Android 模拟器上运行你的应用,并在 Chromium 或 Firebug 中导航到 http://localhost:8081/debugger-ui 来完成。要访问应用内开发者菜单,请在另一个终端窗口中运行以下命令,正如这里所指出的那样:
adb shell input keyevent 82
D
来执行此操作。 - Ian我没有足够的声望来评论之前的回答,它们都很棒。 :) 以下是我在开发React Native应用程序时进行调试的一些方法。
实时重新加载
React Native使得使用⌘ + R键或启用实时重载变得非常容易,看到最新更改后,watchman会“刷新”模拟器。如果出现错误,您可以从红色屏幕中的行号得到线索。撤销一些操作并重新开始即可回到工作状态。
console.log('真的。')
我发现自己更喜欢让程序运行并记录一些信息,而不是添加debugger
断点。(虽然当尝试与外部包/库一起使用时,调试器很有用,并且具有自动完成功能,因此您知道可以利用哪些其他方法。)
使用debugger;
断点启用Chrome调试
好吧,这取决于您遇到的错误类型和您的调试偏好。对于大多数undefined is not an object (evaluating 'something.something')
,对我来说第1种和第2种方法已经足够好了。
而处理其他开发人员编写的外部库或包将需要更多的调试工作,因此像Chrome调试
这样的好工具会很有用。
有时它来自React Native平台本身,因此Google搜索React Native问题肯定会有所帮助。
希望这能对某些人有所帮助。