代码之家  ›  专栏  ›  技术社区  ›  Joyce Babu

如果我多次调用serviceworker.register会发生什么?

  •  0
  • Joyce Babu  · 技术社区  · 8 年前

    我正在尝试通过推送通知服务提供商集成Web推送通知。

    我已经打电话了 navigator.serviceWorker.register 在所有页面上。只有当用户与站点交互时,才会加载服务提供程序的脚本。脚本再次调用 navigator.serviceworker.寄存器

    当一个页面两次注册相同的服务工作者脚本(使用相同的参数)时会发生什么?它是重新使用现有的注册,还是导致重新注册?从一个页面多次注册一个服务工作者有什么缺点吗?

    1 回复  |  直到 8 年前
        1
  •  1
  •   Jeff Posnick    8 年前

    你可以打电话 navigator.serviceWorker.register() 如果你每次都使用相同的论点,那么你喜欢的频率和频率是一样的。它返回的承诺将用等价的 ServiceWorkerRegistration 每次。

    多个调用(在同一浏览会话期间或在多个浏览会话之间)没有任何效果 subsequent calls are effectively a no-op .