如何在返回控制器时停止超时?

时间:2016-12-02 15:50:01

标签: angularjs

我需要在离开控制器后开始时间,如果在5秒内回来,则取消它。毁灭工作和计时器开始。但如果我回来,计时器仍将运行并将打印其消息。

app.controller('MyCtrl', function($scope, $timeout) {
    var timer;

    $scope.$on("$destroy", function() {
        timer = $timeout(function () {
            console.log('timer works on destroy')
            localStorage.removeItem('transaction')
        },5000)
    });

    $scope.$on('$viewContentLoaded', function () {
        $timeout.cancel(timer);
    });
})

转到控制器(页面)时,您能帮助找到我做错的地方或取消超时的其他方法。

0 个答案:

没有答案