服务工作人员在后台安装,而页面正在加载。
1)服务工作者脚本的下载是否与页面加载同时发生并延迟加载?
2)安装事件中提到的资产是否与页面加载并行或者页面加载事件完成后下载和缓存
3)资产的缓存是否尊重HTML Native缓存,还是每次都重新加载?
答案 0 :(得分:3)
第一次,当您注册时,将获取服务工作者。对于更新检查,浏览器会按导航执行此操作,但会在加载后等待,以避免与页面竞争。
答案 1 :(得分:2)
服务工作者的生命周期与您的网页完全分开。
答案 2 :(得分:0)
1)服务工作者脚本的下载是否与页面加载同时发生并延迟加载?
当您致电register()
并且它并行执行时,就会发生下载服务工作人员,因此不会延迟负载。
2)安装事件中提到的资产是否与页面加载一起下载和缓存,或者在页面加载事件结束后。
在服务工作者中发起的任何网络请求都不会阻止主线程,也不会阻止文档加载。
3)资产的缓存是否尊重HTML Native缓存,还是每次都重新加载?
如果您愿意,发起服务工作者的请求会尊重本机缓存(http cache),但you can modify this behavior with the cache
property。
从问题来看,您似乎认为服务工作者的注册与文档负载协调,但不是。一旦调用register()
或发现服务工作者更新后,注册服务工作者的所有阶段都会从网页加载中解耦(并行运行)。