【问题标题】:Cant debug with react native debugger无法使用反应本机调试器进行调试
【发布时间】:2018-12-29 03:54:55
【问题描述】:

我正在按照自述文件 (mcnamee/react-native-starter-kit) 中的说明启动项目。我在注册时将我的firebase与应用程序集成在一起,它卡在微调器上......虽然将电子邮件和密码保存到firebase并且它登录没有问题。我想调试当我点击注册按钮时发生的事情,但它没有显示任何操作等,也没有在反应本机调试器应用程序中显示。为什么反应本机调试器无法连接到我的应用程序。我该如何解决这个问题?

【问题讨论】:

    标签: react-native expo react-native-debugger


    【解决方案1】:

    @beratuslu 你在 cmets 里写的

    我试过你说的,它会自动触发 chrome 并打开 web ui 调试器。我仍然看不到 redux chrome 插件中的操作 也没有。

    我也遇到了同样的问题,在工作了 10 多个工作小时后,我通过取消选中 Maintain Priority 的小勾号解决了这个问题

    因此,如果其他人在执行文档中提到的所有配置时仍试图解决此问题,默认调试器仍会自动触发,而不是连接到反应本机调试器,请按照以下步骤操作。

    • 取消选中默认调试器-ui 中的Maintain Priority 复选框
    • 关闭默认调试器
    • 在模拟器中CTRL + M 并停止远程调试
    • CTRL + T 在 React Native 调试器窗口中
    • 输入您的调试器端口(在我的例子中是 19000)并点击确认
    • 在你的安卓模拟器中,再次开启远程调试(CTRL + M -> 开始远程调试)
    • 现在它应该连接到 React Native 调试器而不是默认的 debugger-ui

    希望它可以帮助某人节省时间来弄清楚为什么默认调试器总是启动而不是连接到反应本机调试器。

    【讨论】:

      【解决方案2】:

      问题是 RND 在不同的端口打开。我从 RND 菜单中更改了端口,它按预期工作。

      【讨论】:

      • 同样的修复对我有用。检查正在使用的端口是否符合您的预期。我的突然从 19001 更改为 19004。将其包含在 RN 调试器配置文件的默认 RN 端口数组中。
      【解决方案3】:

      @beratuslu 你在 cmets 中写道:

      我试过你说的,它会自动触发 chrome 并打开 web ui 调试器。我仍然看不到 redux chrome 插件中的操作 也没有。

      如何开始调试过程?可能是,您尝试从 WebStorm 或 PHPStorm 之类的 Jetbrains-Product 开始。

      在这种情况下,您需要知道,这还行不通。您需要react-native-debugger手动(不是通过 jetbrains 软件)启动,如果运行,只使用“run”(在 jetbrain -software) 来启动您的 DEV-Build。

      这样,如果应用程序(带有 DEV_Flag)已启动并正在运行,将建立与 react-native-debugger 的连接。

      如果您需要使用断点进行调试,则必须使用 Chrome-Browser,但那里没有 redux-output... 而另一方面,您的 react-native-debugger 支持它。

      如果您不想看到 jetbrain-debug 与 react-native-debugger 一起使用,请随时为这个问题投票:https://youtrack.jetbrains.com/issue/WEB-35251

      【讨论】:

        【解决方案4】:

        您一次只能连接一个调试器。如果您在 Web 浏览器中使用调试器。你不能使用 React Native 调试器。

        最简单的解决方案是确保在运行之前运行 React Native Debugger react-native run-ios 并且您应该自动连接到 React Native Debugger。如果它没有连接,您可以随时按 cmd+d 连接到调试器。

        如果您已经连接到网络浏览器调试器。按 cmd+d 在模拟器上调出菜单,禁用远程调试。关闭网络浏览器。启动 React Native 调试器。按 cmd+d 并启用远程调试器,这应该会将您连接到 React Native 调试器。

        关于控制台中的信息。两种调试选项都会为您提供相同的信息。如果您想更详细地调试正在发生的事情,您需要使用 IDE 中的内置调试器并逐步执行代码行或放入一些放置良好的 console.logs()。

        【讨论】:

        • 我正在尝试查看使用哪些数据触发了哪些操作。我仍然看不到操作。
        • 即使RND在npm start之前打开也是直接在chrome上打开调试器
        • @beratuslu 你能切换到 RND 吗?
        • 如何切换?
        • 我试过你所说的,它会自动触发 chrome 并打开 web ui 调试器。我也仍然看不到 redux chrome 插件中的操作。
        猜你喜欢
        • 1970-01-01
        • 2017-01-29
        • 2021-05-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-05-03
        • 2015-06-13
        相关资源
        最近更新 更多