我已经建立了一个非常简单的滑盖角,像这样:清除角超时内部功能
$scope.slider = {};
$scope.slider.pane = 1;
$scope.slider.auto = true;
var slider = function(){
$timeout(function(){
if ($scope.slider.pane === 4) $scope.slider.pane = 1;
else $scope.slider.pane ++;
slider();
}, 4000);
}
slider();
滑块函数创建一个超时循环改变slider.pane
每4秒钟的价值。在HTML中,我有一个链接,单击时将值slider.auto
设置为false
。
<a href="" ng-click="slider.auto=false">Stop slider</a>
单击此项时,需要停止超时循环。它可能在当时的一个周期中,所以我需要清除超时,但它在一个函数中,所以不知道如何访问它。
http://stackoverflow.com/a/21019006/3894168可能会有所帮助。 – Zee
@ Sourabh-谢谢,但这不起作用。在我的滑块功能之外,promise变量不可访问。 – Coop
您可以将您的承诺作为一个全局变量在外部访问。 – Zee