ServiceWorkerGlobalScope:backgroundfetchfail 事件
注意:此功能仅在 Service Workers 中可用。
backgroundfetchfail
事件是 ServiceWorkerGlobalScope
接口的事件,当 后台获取 操作失败时触发:即,当获取操作中的至少一个网络请求未能成功完成时。
此事件不可取消,也不冒泡。
语法
在诸如 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" });
});
规范
规范 |
---|
后台获取 # dom-serviceworkerglobalscope-onbackgroundfetchfail |
浏览器兼容性
BCD 表格仅在启用了 JavaScript 的浏览器中加载。