当应用程序在应用模拟器中运行时,如何用React Native调试他们的React代码?


当前回答

你可以使用Safari来调试iOS版本的应用程序,而不必启用“远程调试JS”,只需遵循以下步骤:

1. Enable Develop menu in Safari: Preferences → Advanced → Select "Show Develop menu in menu bar"
2. Select your app's JSContext: Develop → {Your Simulator} → Automatically Show Web Inspector for JS JSContext
3. Safari's Web Inspector should open which has a Console and a Debugger

其他回答

你也可以使用自定义库,如果你不想摇你的真实手机每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>
    );
  }
}

当你必须在真正的设备上调试并且你有同事坐在你旁边时,它真的很有用。

在React-Native中,调试要容易得多。

在IOS中使用调试

CMD + d ctrl + cmd + z(用于模拟器)

在android中调试

用触摸摇动设备(确保你的开发者选项是启用的)

在模拟器- react-native Run -ios中运行你的应用程序 按ctrl + d,然后点击Debug JS remote

网页应该在http://localhost:8081/debugger-ui打开,如果没有输入URL,在Chrome中进入这个链接 右键点击页面,点击检查,它应该打开chrome开发工具

转到顶部菜单中的源代码,在右侧的文件资源管理器中找到你的js类文件 您可以将断点放到视图中,并在其中调试代码,如图所示。

如果你在React原生应用程序开发中使用Atom编辑器中的Nuclide,那么你也可以使用“元素检查器”,这有助于观察开发阶段应用程序在设备上运行时的道具和状态值变化。

在这里了解更多

Mac: Cmd+M

Windows和Linux: Ctrl+M

在模拟器中使用适当的热键。它会弹出Chrome浏览器,从那里你可以使用开发人员工具。

编辑:

现在在帮助文档中有链接。