ServiceWorkerGlobalScope:periodicsync 事件

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

安全上下文:此功能仅在 安全上下文(HTTPS)中可用,在某些或所有 支持的浏览器 中可用。

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

periodicsync 事件是 ServiceWorkerGlobalScope 接口的事件,它在注册 PeriodicSyncManager 时指定的定时间隔触发。

此事件不可取消,也不会冒泡。

语法

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

js
addEventListener("periodicsync", (event) => {});

onperiodicsync = (event) => {};

事件类型

事件属性

继承其祖先 Event 的属性.

PeriodicSyncEvent.tag 只读

返回此 PeriodicSyncEvent 的开发者定义的标识符。Web 应用程序可以使用多个标签以不同的频率运行不同的定期任务。

示例

以下示例显示了如何在服务工作者中响应定期同步事件。

js
self.addEventListener("periodicsync", (event) => {
  if (event.tag === "get-latest-news") {
    event.waitUntil(fetchAndCacheLatestNews());
  }
});

您还可以使用 onperiodicsync 属性设置事件处理程序

js
self.onperiodicsync = (event) => {
  // ...
};

规范

规范
Web 定期后台同步
# periodicsync-event
Web 定期后台同步
# dom-serviceworkerglobalscope-onperiodicsync

浏览器兼容性

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

另请参阅