npm模块生成此格式的错误。
throw new Error(error.data.errors)
其中error.data.errors
是
{ email: [ 'is invalid' ] }
当我尝试在我的代码的catch块中访问它时,它出现为
[Error: [object Object]]
如何从catch块访问原始错误/错误消息?
答案 0 :(得分:2)
我刚刚进行了一些实验,在这种情况下,你似乎无法做很多事情。当它被抛出时,看起来JavaScript会在错误消息上调用.toString()
。默认情况下,这是所有对象的"[object Object]"
。
据我所知,修复方法是打开一个拉取请求,将错误的抛出更改为以下内容:
throw new Error(JSON.stringify(error.data.errors));
通过此更改,您可以在捕获错误时解析JSON。
try {
// Whatever functionality causes the error.
} catch (e) {
var errors = JSON.parse(e.message);
}