You need to enable JavaScript to run this app. Angular项目运行报SyntaxError: Unexpected token { 错误如何解决
优惠活动
大模型
产品
解决方案
定价
更多

Angular项目运行报SyntaxError: Unexpected token { 错误如何解决

问题根因

你遇到的语法错误本质是版本不兼容,有两个核心冲突点:

  • catch { 属于ES2019推出的可选catch绑定语法,只有Node.js 10+以上版本才支持该语法,你当前使用的Node.js版本远低于要求,无法解析该语法。
  • 你项目核心依赖是Angular 4.x,对应的@angular/cli版本应该是1.x版本,但你安装的@angular/cli@12.1.0跨了11个大版本,和Angular 4完全不兼容,高版本cli依赖的@angular-devkit包使用了新版JS语法,进一步触发了语法报错。
修复步骤

按顺序执行以下操作即可:

  1. 先确认当前Node.js版本,执行命令 node -v,必须调整Node.js版本到v8.x或v10.x(更高版本的Node.js也无法兼容Angular 4),可以用nvm管理多版本Node.js。
  2. 卸载全局和项目内的高版本cli:
# 卸载全局cli
npm uninstall -g @angular/cli
# 卸载项目内cli
npm uninstall @angular/cli
# 清除npm缓存
npm cache clean --force
  1. 安装和Angular 4匹配的cli版本:
# 全局安装1.7.4版本cli
npm install -g @angular/cli@1.7.4
# 项目内安装对应版本cli作为开发依赖
npm install @angular/cli@1.7.4 --save-dev
  1. 删除项目根目录下的node_modules文件夹和package-lock.json文件
  2. 重新安装所有依赖:
npm install
  1. 执行启动命令验证:
ng serve
注意事项
  • 禁止跨大版本混用Angular核心包和@angular/cli版本,每个cli版本都有严格对应的支持Angular范围,12.x版本的cli仅能用于开发Angular 12的项目。
  • 后续如果要升级Angular版本,需按官方指南逐步迭代升级,不要跳多个大版本直接升级cli。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 11:15:08