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

TypeScript编译async函数报错:需Promise构造函数,添加lib配置仍未解决

解决单独执行tsc app.ts时async函数的Promise构造器报错问题

问题原因

直接运行tsc app.ts编译单个文件时,TypeScript编译器不会自动加载当前目录的tsconfig.json配置,而是使用默认编译参数。默认配置的lib不包含ES2015,导致async函数依赖的Promise类型未被识别,因此抛出报错。而执行tsc或tsc -p tsconfig.json时,编译器会读取配置文件中的target和lib设置,所以能正常编译。

解决办法

  • 优先使用配置文件编译:始终执行tsc或tsc -p tsconfig.json,确保编译器加载tsconfig.json中的完整配置,这是最稳妥的方式。
  • 命令行手动指定参数:如果必须单独编译单个文件,在命令行中显式传递target和lib参数:
    tsc app.ts --target es2016 --lib ES2015,DOM
    
  • 封装为npm脚本:把编译命令写到package.json的scripts中,避免重复输入参数:
    {
      "scripts": {
        "build:app": "tsc app.ts --target es2016 --lib ES2015,DOM"
      }
    }
    
    之后运行npm run build:app即可完成编译。

内容的提问来源于stack exchange,提问作者Rudi Heribert Mentär

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 18:27:03