意外的标记“?” React Native 中没有堆栈

问题描述 投票:0回答:3

我收到

unexpected token '?'
错误。但是,在调试模式下,错误消失了。

enter image description here

react-native
3个回答
3
投票

我也遇到过这个问题,但仅限于 Android。该问题是由我使用 nullish 合并赋值运算符 (

??=
) 引起的。例如,类似:

obj ??= {};

React Native 不支持该运算符。因此,在代码中查找所有出现的

??=
并尝试将其更改为扩展方式;例如:

if(obj == undefined)
   obj = {};

在 React Native 添加对它的支持之前,您必须避免使用此运算符。

(我不确定,但是 nullish 合并运算符 (

??
) 可能会导致同样的问题,所以你也可能希望避免它。)


1
投票

就我而言,在我安装了一个示例应用程序后,这个问题发生在我身上:

"metro-config": "^0.72.1"
"react-native": "0.70.0-rc.4"

当我的主应用程序仍在使用时

"react-native": "0.66.4"

当我恢复代码时它也复制了。所以我想出了这个解决方案:

  1. 删除该示例应用程序
  2. 重置电脑
  3. yarn cache clean
    npm cache clean -f

问题就消失了。


0
投票

我的问题只是因为我导入了一个空的 json 文件,甚至没有括号 {}。所以参考上面的第一个答案,它是一个未定义的 json。

© www.soinside.com 2019 - 2024. All rights reserved.