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


当前回答

还有一个非常好的调试器Reactotron。 https://github.com/infinitered/reactotron

您不必在调试模式下查看一些数据值,而且有很多选项。

去看看真的很有用。;)

其他回答

在文件路径中设置空格会阻止Cmd+D的工作。我把我的项目移动到一个没有空间的位置,我终于让Chrome调试器工作了。看起来像个bug。

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

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

我使用的一种技术非常类似于Android中的调试策略,即在所有.js文件中包含一个名为TAG的全局变量。

const TAG = 'APP_NAME+SCREEN_NAME';

然后在需要的地方,我将这样做:console.log(TAG + 'ACTION');

通过这种方式,我可以跟踪操作并查看日志语句的来源。

试试这个程序:https://github.com/jhen0409/react-native-debugger

适用于:windows, osx和linux。

它支持:react native和redux

你还可以检查虚拟组件树,修改应用中反映的样式。

如果你想了解检查网络流量和理解原生UI视图层次结构。通过其可扩展的插件API, React Native Update版本为调试移动应用程序提供了开发人员工具。

Flipper是一个调试移动应用程序的很棒的开发工具。该工具随react-native 62一起发布