AngualrJS条件或动态延迟

时间:2016-04-14 12:33:31

标签: javascript jquery angularjs timeout logic

伙计我想在AngularJS中做出有条件或动态的延迟。 我知道我们可以使用timeout来确定时间延迟,我想要的是让它像动态一样,如果条件不满足而不是等待更多:

var time =500;
$timeout(function(){
                 if(success==false){
                      time =5000;
                  }
                },time);

如果条件不满足则延迟增加。其实我想等待加载数据。

1 个答案:

答案 0 :(得分:0)

使用$ timeout(或setTimeout,不考虑角度)立即注册回调函数以延迟执行,因此更改" time"回调中的变量不会影响实际的延迟。

如果您正在等待加载数据,则还有其他选项,例如使用promises,您可以使用$ q服务 - https://docs.angularjs.org/api/ng/service/ $ q 并在数据可用后解决承诺

另一个选择,如果您使用的是UI路由器,则使用" resolve"状态的属性,以确保在切换状态之前加载数据。

相关问题