我们如何在angularjs app中的服务工作者中触发事件。
以下示例代码正在工作并在chrome / firefox中显示通知
self.addEventListener('push', function(event) {
console.log('[Service Worker] Push Received.');
// console.log(`[Service Worker] Push had this data: "${event.data.text()}"`);
console.log(event.data);
console.log(event.data.json());
console.log(typeof (event.data.json()));
console.log(event);
window.dispatchEvent( new Event('dataisthere') );
const title = 'YummZ';
const options = {
body: 'Message Received \n ' + event.data.json().message,
icon: 'images/icon.png',
// badge: 'images/badge.png',
data : event.data.json()
};
event.waitUntil(self.registration.showNotification(title, options));
});
我尝试发送一个窗口事件但是我收到错误窗口未定义
当服务工作者获得推送通知时,我需要通知我的角度应用程序以执行操作。
注意:新服务工作者
答案 0 :(得分:1)
阅读this。尚未测试它,但我认为您正在寻找的解决方案的一般想法是存在的。标题是如何在服务工作者和客户端之间发送消息,所以如果你设法弥合这个差距,你几乎可以告诉你的服务工作者做你想做的任何事情。