【发布时间】:2016-06-15 11:28:22
【问题描述】:
我正在我的应用中实现推送通知。我让服务人员在我的浏览器 (Chrome) 中显示通知。
现在,我需要调用一个位于 Angular 控制器中的函数。我试图在我的服务人员中进行这样的活动。
self.addEventListener('push', function(event) {
event.waitUntil(
fetch(self.CONTENT_URL, {headers: headers})
.then(function(response) {
if (response.status !== 200) {
}
return response.json().then(function(data) {
/* some stuff*/
document.dispatchEvent('myEvent');
return notification;
});
})
);
});
在此事件中,我处理通知并尝试使用事件。
在控制器中我写了下面的代码
document.addEventListener('myEvent', function(){
console.log("im here");
});
但是浏览器不显示console.log()
有完成这项任务的想法吗?非常感谢!
【问题讨论】:
-
阅读
dispatchEvent()的文档。您没有事件对象。尝试在控制台中简单地运行该事件代码将看到抛出的错误。可能想改用角度事件 -
是的,我想改用角度事件,但服务人员不是角度文件
标签: javascript angularjs events push-notification service-worker