You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级React Native 0.65.1后Metro Builder报Unexpected token =语法错误

问题原因

该报错是当前构建环境调用的Node.js版本不支持类公共字段声明语法导致的。React Native 0.65 配套的Metro版本使用了该语法编写核心代码,仅 Node.js v12.4.0、v14.0.0 及以上版本原生支持该特性。
升级Node版本后问题未解决,大概率是项目构建流程调用的Node版本和全局升级的版本不统一导致的。

解决方案

1. 统一所有环境的Node版本

优先完成以下检查:

  • 终端执行node -v确认全局Node版本 ≥14.0.0,最低不得低于12.4.0
  • 检查项目根目录下是否存在.nvmrc、.node-version等版本锁文件,确认文件内指定的Node版本符合要求
  • 打开安卓项目配置文件android/gradle.properties,检查是否存在NODEJS_BINARY配置项,确认该配置指向的Node路径对应版本符合要求,不要使用系统预装的低版本Node

2. 全量清理缓存后重新构建

执行以下命令清理所有缓存后再尝试打包:

# 删除旧依赖和锁文件
rm -rf node_modules package-lock.json yarn.lock
# 重新安装依赖
npm install
# 清理RN本地缓存
npx react-native start --reset-cache
# 清理安卓构建缓存
cd android && ./gradlew clean && cd ..

3. 低版本Node临时兼容方案

如果受项目限制暂时无法升级Node版本,可强制锁定Metro版本到支持低版本Node的0.64.0:

  • Yarn用户直接在package.json中新增resolutions配置:
{
  "resolutions": {
    "metro": "0.64.0"
  }
}
  • NPM用户安装npm-force-resolutions后,参照上述配置添加对应规则即可。
    配置完成后重新安装依赖就能正常构建。

内容的提问来源于stack exchange,提问作者Maaax

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 18:36:02