查看Node的documentationSystemError扩展了Error类。但是,如果您尝试直接使用SystemError,则Node会抛出一个ReferenceError,表明SystemError未定义。

显然,根据文档,很可能会遇到SystemError的实例,但似乎无法以通常的方式(例如throw new SystemError(args))重新创建此类错误。

我想测试一些代码,这些代码旨在与docs中详细介绍的指定SystemError API进行交互,但是我不知道如何重新创建SystemError。这有可能吗?

最佳答案

我认为node.js不会提供SystemError以避免任何人(npm软件包)使用它。因此,SystemError实际上是SystemError,而不是其他东西。

如果要测试,请生成错误:例如,尝试读取一个不存在的文件。

另一种解决方法是重新创建相似的错误,因为您知道该错误的每个属性。但这实际上是一种解决方法。

https://nodejs.org/api/errors.html#errors_class_systemerror

在Github的https://github.com/DefinitelyTyped/DefinitelyTyped中,我找不到interface的任何SystemError声明。

除了node-fetchvoximplant-websdkalexa-sdk的自定义实现。

https://github.com/DefinitelyTyped/DefinitelyTyped/search?q=systemError&unscoped_q=systemError

10-04 15:34