Javascript 调试时未定义捕获错误
我有一个被错误拒绝的承诺,我正在使用Javascript 调试时未定义捕获错误,javascript,reactjs,google-chrome,debugging,async-await,Javascript,Reactjs,Google Chrome,Debugging,Async Await,我有一个被错误拒绝的承诺,我正在使用try/catch来处理它 const foo = async () => { try { await request(); } catch (error) { console.log(error.message); debugger; } }; 调试时,console.log显示正确的错误,但如果我将鼠标移到上面,则显示未定义error 为什么会这样 这使得错误的调试变得非常困难 这是一个你能从应用程序中提取句柄
try
/catch
来处理它
const foo = async () => {
try {
await request();
} catch (error) {
console.log(error.message);
debugger;
}
};
调试时,console.log
显示正确的错误,但如果我将鼠标移到上面,则显示未定义error
为什么会这样
这使得错误的调试变得非常困难
这是一个你能从应用程序中提取
句柄错误吗?我通过简单地调用xasync
进行测试。它像预期的那样工作。我不回答你问题的原因,因为我无法评论你的问题,也无法上传照片。然后贴出答案。但是无论如何,Chrome的调试器在这个功能方面应该工作得很好
我无法提取,因为它使用的是状态。我的意思是为了确定原因,您可以暂时将函数移出。从示例代码中,我不明白为什么不能将其移出。您仅在单击onClick
时引用此函数,对吗?我忍不住注意到,当我在您的示例上打开调试器时,catch()
中的error
未定义,但error中的error
显示正确。奇怪。@matthew-e-brown是的,我注意到了,真的很奇怪