没有堆栈',原因:'未处理的 JS 异常:无效的正则表达式:无效的组说明符名称

sim*_*imo 3 react-native

我的应用程序将无法启动,它会因异常而中断:

Invalid regular expression: invalid group specifier name

no stack
run
    NativeRunnable.java
handleCallback
    Handler.java:873
dispatchMessage
    Handler.java:99
dispatchMessage
    MessageQueueThreadHandler.java:29
loop
    Looper.java:209
run
    MessageQueueThreadImpl.java:232
run
    Thread.java:914
Run Code Online (Sandbox Code Playgroud)

我发现在 iOS 或 android 中,如果我启用了 live javascript debug,则不会出现问题,但为什么呢?

我在 xcode 和 android 上遇到了同样的错误:

no stack', reason: 'Unhandled JS Exception: Invalid regular expression: invalid group specifier name
Run Code Online (Sandbox Code Playgroud)

我不知道在哪里挖?或者在哪里调试?任何人都可以帮忙吗?

Pat*_*rts 8

您没有收到包含此错误的堆栈的原因是因为 JavaScript 中的正则表达式文字是在执行脚本之前编译的。

\n
\n

正则表达式文字在加载脚本时提供正则表达式的编译。

\n

\xe2\x80\x93 MDN - 正则表达式

\n
\n

不幸的是,这意味着有问题的正则表达式可能位于代码中的任何位置,因为所有 ES2015 模块都捆绑在 React-Native 应用程序中。

\n


lam*_*tor 5

也遇到了这个问题,将一个电子项目移植到 RN。将其追踪到后视正则表达式,Chrome 支持但 Safari 不支持(并且显然是本机反应)-请参阅Chrome 中的工作,但在 Safari 中中断:无效的正则表达式:无效的组说明符名称 /(?<= \/)([^#]+)(?=#*)/

(?在我的项目中搜索让我找到了罪魁祸首!