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

如何配置TypeScript将所有捕获异常的类型设置为any而非unknown

问题原因

该报错是TypeScript 4.4及以上版本的默认行为导致的:当tsconfig.json中strict配置项开启时,useUnknownInCatchVariables编译选项会默认启用,此时所有catch语句捕获的异常变量默认类型为unknown,而非旧版本的any,直接访问异常的属性就会触发类型校验错误。

全局配置解决方案

如果需要全局将catch捕获的异常默认类型改回any,只需要在tsconfig.json的compilerOptions中添加如下配置即可:

{
  "compilerOptions": {
    // 其余原有配置保持不变
    "useUnknownInCatchVariables": false
  }
}

局部调整方案

如果不想全局修改配置,仅需要针对单个catch块取消报错,可以直接手动为异常变量指定any类型:

try {
  // 你的业务逻辑代码
} catch (err: any) {
  // 此处err类型已标注为any,可正常访问任意属性
  console.log(err.message)
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 07:27:03