执行yo code时出现Unexpected token '('错误求助
解决
yo code报Unexpected token '('错误的方案 问题根源
你当前使用的Node.js 12.22.9版本过于陈旧,generator-code(包括你尝试的旧版本)及其依赖包已经使用了Node.js 12不兼容的现代JS语法,这直接导致了语法解析错误。
分步解决办法
- 升级Node.js到兼容版本:
- 卸载系统自带的Node.js和npm:
sudo apt remove nodejs npm - 通过nvm安装LTS版本的Node.js(推荐16.x或18.x,比如16.20.2):
- 先安装nvm:
安装完成后重启终端,或者执行curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bashsource ~/.bashrc让nvm生效。 - 安装并切换到目标版本:
nvm install 16.20.2 nvm use 16.20.2
- 先安装nvm:
- 验证版本是否切换成功:
node -v && npm -v
- 卸载系统自带的Node.js和npm:
- 重装相关工具包:
先卸载全局安装的yo和generator-code,再重新安装:npm uninstall -g yo generator-code npm install -g yo generator-code - 验证修复效果:
再次运行yo code,确认错误是否消失。
额外排查方案
如果升级后问题依旧:
- 清理npm缓存:
npm cache clean --force - 若在项目目录下执行命令,删除本地的
node_modules文件夹和package-lock.json文件,然后重新安装项目依赖。
内容的提问来源于stack exchange,提问作者8SIXSector
相关产品推荐
相关产品推荐

