angular.js - angular $interval怎么在一個(gè)按鈕上實(shí)現(xiàn)開始定時(shí)和結(jié)束定時(shí)
問題描述
我代碼邏輯如下,想要實(shí)現(xiàn):
點(diǎn)擊查詢按鈕,開啟定時(shí),按鈕文案變成停止查詢,
點(diǎn)擊停止查詢,取消定時(shí)
$scope.submitRequest = function () { if ($scope.onlyButton == '查詢') { $scope.onlyButton = '停止查詢'; $interval(function(){ //具體方法},5000); } else{ setTimeout(function(){ $scope.onlyButton = '查詢'; $interval.cancel(stop); },0)}; }
但是沒有成功取消定時(shí),求幫忙...
問題解答
回答1:LZ的代碼完全可以在外面做一個(gè) 狀態(tài)標(biāo)示, 例如:
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>
我覺得這樣寫好些~
相關(guān)文章:
1. sql語句 - mysql中關(guān)聯(lián)表查詢問題2. css - chrome下a標(biāo)簽嵌套img 顯示會(huì)多個(gè)小箭頭?3. javascript - 如何將一個(gè)div始終固定在某個(gè)位置;無論屏幕和分辨率怎么變化;div位置始終不變4. html - vue項(xiàng)目中用到了elementUI問題5. javascript - iframe 為什么加載網(wǎng)頁的時(shí)候滾動(dòng)條這樣顯示?6. python - django models 為生成的html元素添加樣式。7. javascript - vscode alt+shift+f 格式化js代碼,通不過eslint的代碼風(fēng)格檢查怎么辦。。。8. javascript - 有什么比較好的網(wǎng)頁版shell前端組件?9. mysql updtae追加數(shù)據(jù)sql語句10. javascript - 原生canvas中如何獲取到觸摸事件的canvas內(nèi)坐標(biāo)?
