我正在与服务工作者一起编写我的第一个应用程序,并试图获得注册,以便与pushManager进行交互。
我可以用以下任何一种方法来做到这一点:
nagivator.serviceWorker.getRegistration()或
navigator.serviceWorker.ready.then()我应该使用哪一种,区别是什么?
发布于 2015-03-01 16:40:44
据我所知,第一个不需要等到ServiceWorkerRegistration有一个活动的ServiceWorker。最后一个有。
发布于 2015-03-02 09:05:28
使用ready使事情变得更简单,因为它是“以一种返回的承诺永远不会拒绝的方式设计的。相反,它一直等到承诺与具有活动工作人员的服务工作者注册解决为止。”(请参阅Service规范中的就绪的定义 )。
反过来,在调用Push的订阅方法时,Wich将导致较少的失败模式。
从一个订阅 ()上下文调用getRegistration,会添加一些额外的失败模式:
...snip...
...snip...
https://stackoverflow.com/questions/28789395
复制相似问题