当应用程序在应用模拟器中运行时,如何用React Native调试他们的React代码?
当前回答
假设你想在Android模拟器上显示这个菜单
然后,尝试⌘+m在Mac上的Android模拟器上弹出这个开发设置对话框。 如果没有显示,那么转到AVD >(点击笔编辑模拟器配置)>高级设置>检查启用键盘输入框。 然后重试⌘+m。 如果它没有显示静止,那么去运行模拟器设置和发送键盘快捷键到组合框/下拉菜单,然后选择模拟器控件(默认)选项。
然后重试⌘+m。 我希望这对你有帮助,它对我有用。
其他回答
除了其他答案。可以使用调试器语句调试react-native
例子:
debugger; //breaks execution
你的chrome开发工具必须打开这工作
如果你想在默认情况下打开调试:
import { NativeModules } from 'react-native';
if (__DEV__) {
NativeModules.DevSettings.setIsDebuggingRemotely(true)
}
要让它在Android上工作:
npm install --save react-native-devsettings-android
react-native link react-native-devsettings-android
参考:启动一个React Native应用程序,默认启用“调试JS远程”
我使用的一种技术非常类似于Android中的调试策略,即在所有.js文件中包含一个名为TAG的全局变量。
const TAG = 'APP_NAME+SCREEN_NAME';
然后在需要的地方,我将这样做:console.log(TAG + 'ACTION');
通过这种方式,我可以跟踪操作并查看日志语句的来源。
使用Flipper或retotron。每一种都有自己的好处,没有一种要求您启用调试模式,所以您的环境不会变慢!
在Debian 8 (Jessie)上调试react-native 0.40.0可以通过在Chromium或Firebug中导航到http://localhost:8081/debugger-ui来完成,而应用程序正在android模拟器中运行。要访问应用程序内的开发人员菜单,在另一个终端窗口运行以下命令,如下所示:
Adb shell输入keyevent 82
推荐文章
- 如何删除默认的导航栏空间在SwiftUI导航视图
- 警告:API ' variable . getjavacompile()'已过时,已被' variable . getjavacompileprovider()'取代
- 安装APK时出现错误
- 碎片中的onCreateOptionsMenu
- TextView粗体通过XML文件?
- 如何使线性布局的孩子之间的空间?
- DSL元素android.dataBinding。enabled'已过时,已被'android.buildFeatures.dataBinding'取代
- ConstraintLayout:以编程方式更改约束
- PANIC: AVD系统路径损坏。检查ANDROID_SDK_ROOT值
- 如何生成字符串类型的buildConfigField
- 在react native中隐藏/显示组件
- Recyclerview不调用onCreateViewHolder
- 如何在iOS中使用Swift编程segue
- Swift -整数转换为小时/分钟/秒
- Android API 21工具栏填充