当应用程序在应用模拟器中运行时,如何用React Native调试他们的React代码?
当前回答
在Debian 8 (Jessie)上调试react-native 0.40.0可以通过在Chromium或Firebug中导航到http://localhost:8081/debugger-ui来完成,而应用程序正在android模拟器中运行。要访问应用程序内的开发人员菜单,在另一个终端窗口运行以下命令,如下所示:
Adb shell输入keyevent 82
其他回答
如果你想了解检查网络流量和理解原生UI视图层次结构。通过其可扩展的插件API, React Native Update版本为调试移动应用程序提供了开发人员工具。
Flipper是一个调试移动应用程序的很棒的开发工具。该工具随react-native 62一起发布
首先在你的ios模拟器中,如果你按[command + D]键,然后你可以看到这个屏幕。
然后单击远程调试JS按钮。
之后你可能会看到这样的React本机调试器页面。
然后打开你的检查器[f12],去控制台选项卡调试它!:)
在文件路径中设置空格会阻止Cmd+D的工作。我把我的项目移动到一个没有空间的位置,我终于让Chrome调试器工作了。看起来像个bug。
奇怪的是,⌘+ D对我不起作用。在iOS模拟器中按ctrl + cmd⌘+ Z确实为我打开了调试浏览器窗口。
这是弹出的屏幕:
详情请点击这里。
你也可以使用自定义库,如果你不想摇你的真实手机每2分钟
我创建了一个库,允许你在开发模式下使用3个手指触摸而不是摇晃来打开开发菜单
https://github.com/pie6k/react-native-dev-menu-on-touch
你只需要在里面包装你的应用程序:
从react-native-dev-menu-on-touch导入DevMenuOnTouch; //或:import {DevMenuOnTouch} from 'react-native-dev-menu-on-touch'
class YourRootApp extends Component {
render() {
return (
<DevMenuOnTouch>
<YourApp />
</DevMenuOnTouch>
);
}
}
当你必须在真正的设备上调试并且你有同事坐在你旁边时,它真的很有用。
推荐文章
- 在XML中“图像上缺少contentDescription属性”
- 在Android SQLite中处理日期的最佳方法
- 架构i386的未定义符号:_OBJC_CLASS_$_SKPSMTPMessage",引用自:错误
- 读取Android APK的包名
- UILabel对齐文本到中心
- Objective-C中方法混合的危险是什么?
- Android-Facebook应用程序的键散列
- 如何使gdb保存命令历史?
- 登出时,清除活动历史堆栈,防止“返回”按钮打开已登录的活动
- 如何改变标题的活动在安卓?
- 如何使用接口生成器创建的nib文件加载UIView
- 如何检查Flutter应用程序是否正在调试中运行?
- iOS如何设置应用程序图标和启动图像
- 更改UITextField和UITextView光标/插入符颜色
- 如何隐藏动作栏之前的活动被创建,然后再显示它?