第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何取消 setInterval 函數(shù)?

如何取消 setInterval 函數(shù)?

天涯盡頭無女友 2021-10-14 14:25:35
首先:我是 angularjs 或 js 的新手。所以也許我的代碼中有一個(gè)愚蠢的錯(cuò)誤。所以這是關(guān)于:我試圖構(gòu)建一個(gè)簡(jiǎn)單的注銷模板,它將在 10 秒后注銷您。還有兩個(gè)按鈕,一個(gè)用于直接注銷,一個(gè)用于取消注銷。我的問題:如果你只是讓時(shí)間過去,倒計(jì)時(shí)不會(huì)在 10 秒后停止。因此,出于某種原因,“clearInterval”方法不起作用。如果您使用其中一個(gè)按鈕取消間隔,它會(huì)起作用。因此,該方法似乎在取消和 clearInterval 之后仍然計(jì)數(shù)。<div class='container' ng-app="myAssesmentApp" ng-controller="logoutController" >    <h1>Logout</h1>    <br>    <form>        <div class='form-group'>            <p> Ur gonna loged out in <span id="countdowntimer">10 </span> seconds</p>        </div>        <button type='submit' class='btn btn-primary' ng-click ="logout()" id="close">Okay log me out</button>        <button type='submit' class='btn btn-primary' ng-click ="cancelLogout()" id="dont">i dont wanna get loged out</button>        </form> </div>JS:    myAssesmentApp.controller('logoutController', ['$scope', 'userService', '$state', function ($scope, userService, $state) {        $scope.timeleft = 10;        var downloadTimer = setInterval($scope.timer, 1000);        $scope.timer = function ()      {      $scope.timeleft--;      document.getElementById("countdowntimer").textContent = $scope.timeleft;      if ($scope.timeleft <= 0)       {           $scope.stop();      }    };    $scope.stop = function()        {            clearInterval(downloadTimer);             $scope.logout();        }    $scope.cancelLogout = function ()         {            clearInterval(downloadTimer);            $state.go('main.projectstate');            $scope.dynamicView = false;        };        $scope.logout = function () {            clearInterval(downloadTimer);            userService.benutzer = '';            userService.password = '';            $scope.logedIn = false;     };    }]);所以它應(yīng)該做的是在 10 秒后重置并取消整個(gè)方法。我知道我不是最好的英語演講者,但我希望你理解我的問題 :) 在此先感謝!
查看完整描述

2 回答

?
慕神8447489

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超1個(gè)贊

這非常簡(jiǎn)單直接。有一個(gè)內(nèi)置的方法clearInterval()來取消/清除間隔。這是示例代碼片段,


function fun() { 

    t = setInterval( func(){}, 3000); 


function stop() { 

    clearInterval(t); 


查看完整回答
反對(duì) 回復(fù) 2021-10-14
?
蕪湖不蕪

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超7個(gè)贊

AngularJs 有自己的間隔服務(wù):$interval :文檔

你可以這樣使用它:

const downloadTimer = $interval(() => $scope.timer(), 1000);

對(duì)于取消:

$interval.cancel(downloadTimer);

同樣在 HTML 中,您必須為變量添加綁定:

 <p> Ur gonna loged out in <span id="countdowntimer">{{timeleft}}</span> seconds</p>

在此處查看工作演示:DEMO


查看完整回答
反對(duì) 回復(fù) 2021-10-14
  • 2 回答
  • 0 關(guān)注
  • 1510 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)