angular.js - angular $interval怎么在一個按鈕上實現開始定時和結束定時
問題描述
我代碼邏輯如下,想要實現:
點擊查詢按鈕,開啟定時,按鈕文案變成停止查詢,
點擊停止查詢,取消定時
$scope.submitRequest = function () { if ($scope.onlyButton == '查詢') { $scope.onlyButton = '停止查詢'; $interval(function(){ //具體方法},5000); } else{ setTimeout(function(){ $scope.onlyButton = '查詢'; $interval.cancel(stop); },0)}; }
但是沒有成功取消定時,求幫忙...
問題解答
回答1:LZ的代碼完全可以在外面做一個 狀態標示, 例如:
var interval;$scope.startStatus = false;$scope.submitRequest = function(){ if( !$scope.startStatus ){interval = $interval(...); } else {$interval.cancel(interval); }$scope.startStatus = !$scope.startStatus; }
然后在VIEW中直接類似使用:
<button ng-bind=' !startStatus ? ’查詢’ : ’停止查詢’ '></button>
我覺得這樣寫好些~
相關文章:
1. java - HashSet<int> 為何有錯誤?2. angular.js - angularjs如何傳遞id給另一個視圖 根據id獲取json數據?3. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?4. 數據庫無法進入5. 在windows下安裝docker Toolbox 啟動Docker Quickstart Terminal 失?。?/a>6. mysql - 記得以前在哪里看過一個估算時間的網站7. 使用text-shadow可以給圖片加陰影嗎?8. docker start -a dockername 老是卡住,什么情況?9. boot2docker無法啟動10. python - linux怎么在每天的凌晨2點執行一次這個log.py文件
