BackgroundFetchEvent

可用性有限

此功能不是基线功能,因为它在一些最广泛使用的浏览器中不起作用。

实验性: 这是一个 实验性技术
在生产环境中使用此功能之前,请仔细查看 浏览器兼容性表

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

BackgroundFetchEvent后台获取 API 的接口,它是分派到 服务工作者全局作用域 上的后台获取事件的事件类型。

它是传递给 backgroundfetchclick 事件和 backgroundfetchabort 事件的事件类型。

Event ExtendableEvent BackgroundFetchEvent

构造函数

BackgroundFetchEvent() 实验性

创建一个新的 BackgroundFetchEvent 对象。此构造函数通常不用于手动创建,因为浏览器会自行创建这些对象并将其提供给后台获取事件回调函数。

实例属性

还继承了其父级 ExtendableEvent 的属性。

BackgroundFetchEvent.registration 只读 实验性

返回初始化事件的 BackgroundFetchRegistration

实例方法

还继承了其父级 ExtendableEvent 的方法。

无。

示例

在此示例中,如果用户点击显示下载进度的用户界面,将打开一个新窗口。通过调用 event.registration 可以返回当前的 BackgroundFetchRegistration

js
addEventListener("backgroundfetchclick", (event) => {
  const bgFetch = event.registration;

  if (bgFetch.result === "success") {
    clients.openWindow("/latest-podcasts");
  } else {
    clients.openWindow("/download-progress");
  }
});

规范

规范
后台获取
# background-fetch-event

浏览器兼容性

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