AbortSignal:abort 事件

基线 广泛可用

此功能已得到良好建立,并在许多设备和浏览器版本中均可使用。它自以下时间起在所有浏览器中均可用 2019 年 3 月.

注意:此功能在Web Workers 中可用。

当关联请求被中止时(例如,使用AbortController.abort()),AbortSignalabort 事件就会触发。

语法

在诸如addEventListener() 之类的方法中使用事件名称,或设置事件处理程序属性。

js
addEventListener('abort', (event) => { })

onabort = (event) => { }

事件类型

一个通用的Event,没有添加任何属性。

示例

在以下代码片段中,我们创建了一个新的 AbortController 对象,并获取其AbortSignal(可使用 signal 属性获取)。稍后,我们使用事件处理程序属性检查信号是否已被中止,

您可以使用addEventListener 方法检测 abort 事件

js
const controller = new AbortController();
const signal = controller.signal;

signal.addEventListener("abort", () => {
  console.log("Request aborted");
});

或使用 onabort 事件处理程序属性

js
const controller = new AbortController();
const signal = controller.signal;

signal.onabort = () => {
  console.log("Request aborted");
};

规范

规范
DOM 标准
# eventdef-abortsignal-abort
DOM 标准
# abortsignal-onabort

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。