gpt4 book ai didi

javascript - 使用Flow时如何向Error对象添加调试信息?

转载 作者:行者123 更新时间:2023-12-01 03:18:38 26 4
gpt4 key购买 nike

这是 JavaScript 中的常见模式:

const error = new TypeError('Unknown element type');
error.foo = foo;
throw error;

(即,在抛出 Error 实例之前将一些相关对象附加到它,以用于调试目的。)

但是 Flow 提示:

property `foo`
Property not found in
TypeError

Flow 中的正确解决方案是什么?

最佳答案

您可以创建一个更具体的子类型:

class SubTypeError extends TypeError {
foo : string;
constructor(msg){
super(msg);
this.foo = '';
}
}

const error = new SubTypeError('Unknown element type');
error.foo = 'hey';
throw error;

尽管这很可能不适用于类语法转换器(例如 babel 类转换器)。

关于javascript - 使用Flow时如何向Error对象添加调试信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45372796/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com