ServiceWorkerGlobalScope:backgroundfetchfail 事件
注意:此功能仅在 Service Workers 中可用。
ServiceWorkerGlobalScope 接口的 backgroundfetchfail 事件在 后台获取 操作失败时触发:也就是说,当获取中的至少一个网络请求未能成功完成时。
此事件不可取消,也不会冒泡。
语法
在诸如 addEventListener() 之类的方法中使用事件名称,或设置事件处理程序属性。
js
addEventListener("backgroundfetchfail", (event) => { })
onbackgroundfetchfail = (event) => { }
事件类型
事件属性
继承自其父级 BackgroundFetchEvent 的属性。
BackgroundFetchUpdateUIEvent.updateUI()-
更新浏览器显示的用于显示获取操作进度的元素的 UI。
描述
当 后台获取 操作失败时(意味着单个网络请求中至少有一个未成功完成),浏览器会启动服务工作线程(如果需要),并在服务工作线程的全局作用域中触发 backgroundfetchfail 事件。
在后台获取 API 中,浏览器会向用户显示一个 UI 元素来指示操作的进度。在 backgroundfetchfail 处理程序中,服务工作线程可以更新该 UI 以显示操作已失败。为此,处理程序会调用事件的 updateUI() 方法,并传入新的标题和/或图标。
在此 backgroundfetchfail 的处理程序中,服务工作线程还可以清理该操作的任何相关数据。它还可以检索并存储任何成功的响应(例如,使用 Cache API)。要访问响应数据,服务工作线程会使用事件的 registration 属性。
示例
更新 UI
此事件处理程序会更新 UI,告知用户该操作已失败。
js
addEventListener("backgroundfetchfail", (event) => {
event.updateUI({ title: "Could not complete download" });
});
规范
| 规范 |
|---|
| Background Fetch # dom-serviceworkerglobalscope-onbackgroundfetchfail |
浏览器兼容性
加载中…