( session: options?.session, ^ SyntaxError: Unexpected token '.')mongoose 在实例 ubuntu aws 中部署时出错

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

/var/www/node-api/node_modules/mongoose/node_modules/mongodb/lib/admin.js:62 会话:选项?.会话, ^

语法错误:意外的标记“.”

我重新安装了node_modules,但总是出现同样的问题

对于猫鼬,我的设备连接工作正常

amazon-web-services api mongoose syntax-error
1个回答
0
投票

为此添加答案,因为它不断出现。

问题:

Mongoose 使用 MongoDB 本机 Node.js 驱动程序作为其依赖项之一。

mongodb V6 本机驱动程序中,他们在async command()内的

admin.js
中实现了
可选链接

async command(command, options) {
   return (0, execute_operation_1.executeOperation)(this.s.db.client, new run_command_1.RunAdminCommandOperation(command, {
      ...(0, bson_1.resolveBSONOptions)(options),
      session: options?.session, //< optional chaining here
      readPreference: options?.readPreference
   }));
}

问题在于 Node.js 直到 V14.5 才支持可选链

解决方案

您需要将 Node.js 版本升级到较新的版本。在撰写本文时,Node V20 是 LTS,因此我建议升级到该版本,或者查看发布时间表以提前计划。

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