首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用$interval进行连续的角轮询?

如何使用$interval进行连续的角轮询?
EN

Stack Overflow用户
提问于 2015-10-24 15:01:46
回答 1查看 466关注 0票数 1

在我的角度代码中,我有一个长轮询的代码,如下所示

代码语言:javascript
运行
复制
var request = function() { 
    $http.post(url).then(function(res) {
        var shouldStop = handleData(res);
        if (!shouldStop()) {
            request()
        }
     };
}
request();

函数将在页面加载后立即调用。

但是,现在我尝试在Protractor中设置测试,并得到了这个错误消息。

失败:在11秒后超时等待量角器与页面同步。请看https://github.com/angular/protractor/blob/master/docs/faq.md。下列任务尚未完成:

文档中,我看到了以下内容:

在执行任何操作之前,Protractor要求角等待页面同步。这意味着所有超时和http请求都完成了。如果您的应用程序不断轮询$timeout或$http,则永远不会将其注册为完全加载。您应该将$interval服务(interval.js)用于任何连续轮询(在角1.2rc3中引入)。

如何编辑代码以使用$interval?我认为interval是window.setInterval的一个角包装器,我不知道如何将它用于长轮询。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-24 15:22:34

哦,文档中的$interval东西属于$timeout,而不是$http

好的,我将丢弃角的$http,只使用fetch (附加的$rootScope.$apply和JSON反序列化)来做同样的事情

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33319594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档