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

Node.js连接MongoDB报TS2305:tls无TLSSocketOptions导出如何解决

根因说明

你本地运行的Node版本是14.18.1,但安装的@types/node版本为v11,两者的类型定义不匹配。v11版本的@types/node中tls模块未对外导出TLSSocketOptions类型,因此MongoDB 4.x版本的类型声明引用该类型时会触发编译错误。

解决方案
  • 方案1(推荐):升级类型定义包匹配Node版本
    执行以下命令安装和Node 14匹配的类型定义:

    npm install --save-dev @types/node@14
    

    安装完成后重新执行编译命令即可。

  • 方案2:跳过第三方库类型检查
    在项目的tsconfig.json的compilerOptions配置项中添加以下规则:

    "skipLibCheck": true
    

    该配置会跳过node_modules目录下所有类型声明文件的检查,不会影响业务代码的类型校验逻辑,可快速解决这类第三方包类型兼容问题。

  • 方案3:降级MongoDB版本
    如果你暂时无法升级@types/node版本,可以将MongoDB驱动降级到适配v11类型定义的3.x版本:

    npm install mongodb@3.7.3
    

以上方案任选其一执行后,建议删除node_modules目录和锁文件,重新安装依赖后再执行编译校验。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 06:06:08