【问题标题】:Is there a way to programmatically detect when the app is running in chrome debugging mode?有没有办法以编程方式检测应用程序何时以 chrome 调试模式运行?
【发布时间】:2016-08-11 18:07:45
【问题描述】:

我想要执行的日志记录类型会根据我所处的环境而有所不同。此外,在实际层面上,我可能希望在 chrome 中调试时禁用某些动画,因为这些动画在运行时非常缓慢桥。

澄清一下,在 chrome 中检测远程调试与检测应用程序是否处于__DEV__ 模式或使用打包程序不同。具体来说,我指的是当你在开发者菜单中选择“开始远程调试”(以前是“在 Chrome 中开始调试”)时。

【问题讨论】:

标签: react-native


【解决方案1】:

typeof location !== 'undefined'

远程调试时,全局变量上没有originlocation 属性。

它适用于React Native 44.0

【讨论】:

  • 可以确认它仍然适用于 React Native 0.63.3
【解决方案2】:

啊,我自己想通了。可能有更好的方法,但您可以使用特征检测。 anonymous.js 库中的以下 sn-p 可以解决问题。

let isNode = ("undefined" !== typeof global) && ('[object global]' === Object.prototype.toString.call(global))
let isWebWorker = !isNode && ('undefined' !== typeof WorkerGlobalScope) && ("function" === typeof importScripts) && (navigator instanceof WorkerNavigator)

在 chrome 中远程调试时,您的代码在 WebWorker 中运行。

【讨论】:

  • 啊,对,这可能很有用!感谢发帖:)
【解决方案3】:

这个简短的 sn-p 对我有用

typeof importScripts === "function"

【讨论】:

    猜你喜欢
    • 2011-07-03
    • 1970-01-01
    • 2015-04-03
    • 1970-01-01
    • 2020-10-06
    • 1970-01-01
    • 2014-11-24
    • 1970-01-01
    相关资源
    最近更新 更多