gpt4 book ai didi

debugging - React-Native:除非点击屏幕,否则调试时应用程序卡住

转载 作者:行者123 更新时间:2023-12-03 14:50:24 28 4
gpt4 key购买 nike

我的 Android 应用程序由两个屏幕组成:“登录”和“仪表板”。
登录工作正常,但仪表板是个麻烦制造者。
第一个问题 :
在登录屏幕上,我可以打开调试菜单,一切都按预期工作。当我切换到仪表板屏幕时,我无法再打开菜单。如果我在登录屏幕中启用了检查器,然后转到仪表板屏幕,检查器就会消失。
第二个问题 :
当我在没有附加调试器的情况下运行应用程序时,仪表板中没有数据,但登录正常工作。
当我附加调试器时,应用程序会“卡住”很多。
通过在“卡住”时点击屏幕(带有调试器),应用程序向前迈进了一步 - 当我经常点击屏幕时,我最终得到了我期待的所有数据!
没有设置断点,我根本不需要使用调试器,只需附加它即可。
iOS 对应的似乎工作得很好。
这里可能有什么问题?
更新:
我使用 React-Native 0.31.0
只是为了澄清 : 我的问题不是调试器本身。我的问题是这样一个事实,即在没有调试器的情况下我没有得到任何数据,但是当调试器被连接时我得到了所有的数据( 仅在 Android 上!)。

最佳答案

我相信已经弄清楚问题的核心是什么。
在调试 React-Native 应用程序时,代码由支持更多 javascript 的 Chrome“运行”。 (我发现很难找到合适的词来形容这个......)
来自 React-Native documentation :

On iOS simulators and devices, Android emulators and devices ReactNative uses JavaScriptCore which is the JavaScript engine that powersSafari. On iOS JSC doesn't use JIT due to the absence of writable

executable memory in iOS apps.When using Chrome debugging, it runs all the JavaScript code withinChrome itself and communicates with native code via WebSocket. So youare using V8


在我的例子中,一些函数使用了 for of循环或 array.some句法。
我不确定,目前支持什么,所以你(曾经遇到过这个问题的人)可能想要更新你的 react-native 版本。
请查看 this ECMAScript Compatibility table

关于debugging - React-Native:除非点击屏幕,否则调试时应用程序卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39292578/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com