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

在AWS Ubuntu实例部署时Mongoose报Unexpected token '.'语法错误

解决Mongoose中出现的SyntaxError: Unexpected token '.'错误

错误原因

你遇到的SyntaxError: Unexpected token '.'是因为服务器上的Node.js版本不支持可选链操作符(?.)。这个语法在Node.js 14.0.0及以上版本才默认启用,而你服务器的Node版本低于该要求。本地环境能正常运行,说明本地Node版本满足语法支持条件。

解决方案

  • 检查并升级服务器Node.js版本
    1. 先查看当前Node版本:
      node -v
      
    2. 如果版本低于14.0.0,建议升级到稳定版(比如18.x或20.x)。可以用nvm(Node版本管理器)来便捷管理:
      • 安装nvm后,执行以下命令安装指定版本:
        nvm install 18
        
      • 设置该版本为默认:
        nvm alias default 18
        
  • 降级Mongoose版本(无法升级Node时)
    如果服务器无法升级Node,可以降级Mongoose到兼容旧版本的分支:
    • 降级到支持Node.js 12+的Mongoose 6.x:
      npm install mongoose@6 --save
      
    • 若Node版本更低,可降级到Mongoose 5.x:
      npm install mongoose@5 --save
      

补充说明

你重装node_modules无效,是因为问题根源不在依赖包本身,而是Node版本不支持依赖代码中使用的新语法,所以升级Node或降级依赖才是解决办法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 20:32:36