Javascript:如何在 IF 语句中从 AbortController 捕获 `DOMException: Aborted`?
Javascript: How to capture `DOMException: Aborted` from AbortController in an IF statement?
我正在使用 AbortController
并捕获它在中止时抛出的错误。我的调试器说错误是 DOMException: Aborted
。我想在 IF 语句中捕获它,但我不确定如何捕获。我试过 if (e == "DOMException: Aborted")
和 if (e == "Aborted")
但他们没有捕捉到它。
我的代码:
controller = new AbortController();
const signal = controller.signal;
fetch(url, { signal })
.then(function(response) {
console.log('Download complete', response);
})
.catch(function(e) {
console.log('Download error: ' + e.message);
});
然后我用 controller.abort()
中止这个控制器
它是一个 DOMException
实例,是一个对象而不是字符串。测试它的正确条件是
.catch(function(e) {
if (e instanceof DOMException && e.name == "AbortError") {
// …
} else {
console.log('Download error: ' + e.message);
}
});
您还可以检查是否e.code == DOMException.ABORT_ERR
。
我正在使用 AbortController
并捕获它在中止时抛出的错误。我的调试器说错误是 DOMException: Aborted
。我想在 IF 语句中捕获它,但我不确定如何捕获。我试过 if (e == "DOMException: Aborted")
和 if (e == "Aborted")
但他们没有捕捉到它。
我的代码:
controller = new AbortController();
const signal = controller.signal;
fetch(url, { signal })
.then(function(response) {
console.log('Download complete', response);
})
.catch(function(e) {
console.log('Download error: ' + e.message);
});
然后我用 controller.abort()
它是一个 DOMException
实例,是一个对象而不是字符串。测试它的正确条件是
.catch(function(e) {
if (e instanceof DOMException && e.name == "AbortError") {
// …
} else {
console.log('Download error: ' + e.message);
}
});
您还可以检查是否e.code == DOMException.ABORT_ERR
。