使用v8.2模拟器, Cmd + D 始终显示以下错误消息
[RCTLog][tid:0x7fcc2bf4cb90][RCTRootView.m:68]>WebSocket debugger is not available. Did you forget to include RCTWebSocketExecutor?
答案 0 :(得分:4)
最后,在我尝试了许多不同的方法来解决这个问题之后,我找到了根本原因。
要使用Chrome DevTool进行调试,iOS项目需要导入库RCTWebSocketDebugger.xcodeproj
和libicucore.dylib
。
在本机反应示例中,2048
,Movies
,TicTacToe
不会导入这两个库。这就是为什么它总是显示错误消息" WebSocket调试器不可用。你有没有忘记加入RCTWebSocketExecutor?"在控制台中。
+
> Add Other...
&gt; <REACT_NATIVE_ROOT>/Libraries/RCTWebSocketDebugger/RCTWebSocketDebugger.xcodeproj
+
&gt;搜索RCTWebSocketDebugger.a
&gt; Add
+
&gt;搜索libicucore.dylib
&gt; Add
http://localhost:8081/debugger-ui
答案 1 :(得分:0)
可能与此问题类似:
https://github.com/facebook/react-native/issues/311
这里也提到了:
https://github.com/facebook/react-native/issues/297
看起来React Native无法连接到Chrome调试器这一事实可能是一个糟糕的错误消息。第一个链接有一个可能的解决方法:
In RCTWebSocketExecutor.m:
- (instancetype)init
{
return [self initWithURL:[NSURL URLWithString:@"http://localhost:8081/debugger-proxy"]];
}
这可以防止远程调试。如果我手动将其更改为我的 计算机的IP,我可以使用Chrome检查器进行调试。
如果有效,则归功于https://github.com/ckknight:)