AngularJS:后台进程
AngularJS: Background process
我有一个angular应用程序,我想添加一个在没有任何视图的情况下运行的后台进程。它所做的只是定期调用一个Web服务并对此做些什么,而不是UI。
一个快速而肮脏的方法是简单地将代码放在window.onlad中。但我应该考虑用有角度的方式来做吗?如果是,我是否将代码放入服务中?我最初将如何"启动"此服务?
您自己回答,服务是正确的选择,您可以将其注入应用程序上的任何控制器中,如果不是这样,并且您没有控制器(或指令),那么您可以在angular.run
中执行
angular.module('lookMaMyModule').run(function(injectables){
do something fancy on run
})
这里有一个简单的概念,它可能会有小问题,但你会明白的。
angular.bootstrap2 = function(module, element, callback){
angular.bootstrap(module, element);
callback();
}
从html中删除ng应用标签,并引导应用
如果后台进程是ng模块,则使用angular.module('name').run();
,否则使用自引导技术
app.js
angular.module('name', ['deps']);
angular.bootstrap2(['name'], document.body, function(){
var process_1 = new MyServ();
process_1.start();
});
service.js
var MyServ = function(){
this.intervalId = 0;
this.start = function(){
this.intervalId = setInterval(function(){
console.log('executing');
}, 1000);
}
this.stop = function(){
setInterval.cancel(this.intervalId); //don't remember api, sorry :<
}
});
我想你要找的是
app.run()
当angular应用程序启动时调用
参见https://docs.angularjs.org/api/ng/type/angular.Module
相关文章:
- 当绑定到AngularJS中的函数时,会在后台发生什么
- 从后台用angularjs填充表单
- jar文件的后台进程,如何在进程结束时异步通知我
- Chrome 打包应用程序 - 在后台/事件页面中使用 AngularJS
- ngRoute 在 angularjs 中作为依赖项包含在后台时如何工作
- 在后台进程中发送电子邮件
- 如何在 AngularJS 中将任务推送到后台
- AngularJS:后台进程
- 如何在Javascript中创建后台进程
- AngularJS后台任务指令更新控制器
- AngularJS有一个iFrame,我把信息发送回父进程去做某事,但它没有做
- PHP后台进程类似于Nodejs
- 在node.js中使用工作/后台进程vs .异步调用
- 在angularjs和后台使用laravel上传多个文件(不带form标签)
- Angularjs的单个进程执行
- Node.js中的后台进程
- 使用Node.JS运行后台进程
- AngularJS后台更新模型 - 最佳实践
- HTTP GET请求到KDB+进程使用AngularJS
- 如何管理与后台进程相结合的模块实例