收到推送通知时如何更改范围变量
How to change scope variable when push notification received
我的网络应用程序中有一个通知图标,显示通知数量。应用程序的前端是使用 angularjs 制作的。
图标的计数存储在 $rootScope
变量中。我想在收到推送通知时增加变量(或调用 returns 计数的 Web 服务)。
serviceworker.js 文件无法访问 angularjs 中的范围变量。如何从 serviceworker 更改计数变量的值。
我想在 localStorage
项上添加更改事件侦听器。
登录后,我将创建一个项目。
localStorage.setItem('notifCount', 0);
当我收到推送通知时,我将在 serviceworker.js
中的 localStorage
中递增 notifCount
并且将触发更改事件。我可以在其中一个控制器文件中添加 localStorage
更改侦听器并调用 Web 服务或仅增加 $rootScope
变量。
但即使有人在开发工具中手动更改 localStorage 也会发生这种情况。
我想知道我是否可以这样做(如果它是正确的方法)或者是否有更好的方法。我不觉得这是正确的方法。
数据通过消息系统在 worker 和主线程之间发送——双方使用 postMessage() 方法发送消息,并通过 onmessage
事件处理程序(消息包含在 Message 事件的数据属性中。)复制数据而不是共享数据。
有关详细信息,请参阅
我的网络应用程序中有一个通知图标,显示通知数量。应用程序的前端是使用 angularjs 制作的。
图标的计数存储在 $rootScope
变量中。我想在收到推送通知时增加变量(或调用 returns 计数的 Web 服务)。
serviceworker.js 文件无法访问 angularjs 中的范围变量。如何从 serviceworker 更改计数变量的值。
我想在 localStorage
项上添加更改事件侦听器。
登录后,我将创建一个项目。
localStorage.setItem('notifCount', 0);
当我收到推送通知时,我将在 serviceworker.js
中的 localStorage
中递增 notifCount
并且将触发更改事件。我可以在其中一个控制器文件中添加 localStorage
更改侦听器并调用 Web 服务或仅增加 $rootScope
变量。
但即使有人在开发工具中手动更改 localStorage 也会发生这种情况。
我想知道我是否可以这样做(如果它是正确的方法)或者是否有更好的方法。我不觉得这是正确的方法。
数据通过消息系统在 worker 和主线程之间发送——双方使用 postMessage() 方法发送消息,并通过 onmessage
事件处理程序(消息包含在 Message 事件的数据属性中。)复制数据而不是共享数据。
有关详细信息,请参阅