AngularJS全球http轮询服务

AngularJS全球http轮询服务,第1张

AngularJS全球http轮询服务

这是我的解决方案:

app.factory('Poller', function($http, $timeout) {  var data = { response: {}, calls: 0 };  var poller = function() {    $http.get('data.json').then(function(r) {      data.response = r.data;      data.calls++;      $timeout(poller, 1000);    });        };  poller();  return {    data: data  };});

(只是为了表明轮询已完成)

http://plnkr.co/edit/iMmhXTYweN4IrRrrpvMq?p=preview

编辑: 正如乔什·大卫·米勒(Josh David
Miller)在评论中建议的那样,应在app.run块中添加对此服务的依赖关系,以确保从头开始进行轮询:

app.run(function(Poller) {});

并在上一个呼叫完成后移动了下一个轮询的计划。因此,如果轮询挂起很长时间,就不会有“堆叠”的呼叫。

更新了插件。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5662436.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存