如何在typescript NodeJs Architect项目中声明全局错误类型?

tpxzln5u  于 2022-11-04  发布在  Node.js
关注(0)|答案(1)|浏览(158)

内容

你好,我有一个NodeJs+Ts+ Architect设置用于构建和部署lambda函数。Architect使用类型脚本plugin来编译类型脚本。我正在尝试使用Error类来抛出错误。
但是,Typescript正在从/Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/lib.es5.d.ts中选取错误类型。
在下面的图像中,请注意构造函数签名只接受message字段。并且错误接口也没有options对象。请查看Browser Error Class或NodeJs错误类以查看签名。

Node Error具有以下构造函数签名和Error接口。

问题

  • 尝试将节点错误的构造函数签名用作Typescript时出现TS错误,正在从lib.es5.d.ts阅读错误类型,该类型仅接受1个参数

我知道的可能解决方案

  • 声明全局错误类型(此处需要帮助。由于Architect正在使用其插件编译TS,因此我无法声明和覆盖错误接口)
  • 使用您自己的Error类

我希望这个问题是有意义的。如果有更好的方法来解决这个问题,我会很感激,但是我没有得到关于Architect+Ts+ NodeJ的充分讨论。

6jjcrrmo

6jjcrrmo1#

cause选项是在ES2022中引入的。对于您的库类型,您至少需要使用该版本。
将您的tsconfig.json中的lib版本更改为:

"compilerOptions": { "lib": ["es2022"] }

相关问题