在 Angular 中打开和关闭后台任务
Posted
技术标签:
【中文标题】在 Angular 中打开和关闭后台任务【英文标题】:Turning on and off background tasks in Angular 【发布时间】:2016-07-27 10:31:52 【问题描述】:我目前正在开发一个 Ionic / Cordova 应用程序,我对 Angular 有一个小问题。我有一些州,我使用 $state.go 从一个州转到另一个州。每个州都有自己的控制器,而且效果很好。
现在我正在尝试添加一个 GPS 跟踪器(该应用程序用于定向游戏,它允许游戏大师跟踪玩家)但我不知道该怎么做。我需要创建一个模块/服务/函数/任何可以从任何控制器中的任何位置启动的东西,并且可以使用相同的方式停止。
我想启动这个“线程”,其中包含一个刷新位置的 setInterval 函数,并继续在状态和控制器之间导航。但是我需要在游戏结束时停止它,所以我需要一种方法来关闭它。
你能帮我做吗?
非常感谢!
【问题讨论】:
【参考方案1】:如果您希望进程在自己的线程上运行,您可以使用网络工作者来实现它。请检查以下项目: https://github.com/mattslocum/ng-webworker https://github.com/FredrikSandell/angular-workers
【讨论】:
好的,但是控制器改变后是否可以控制该功能?因为它会失去承诺,对吧? 是的,可能是这样。但是您可以使用 localStorage 或 sqlite 来存储 webworker 的完成工作以及一个标志,并且您可以访问任何控制器中的数据。如果您觉得我的回答有用,请点赞。以上是关于在 Angular 中打开和关闭后台任务的主要内容,如果未能解决你的问题,请参考以下文章