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:回答2: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. mysql - 查询字段做了索引为什么不起效,还有查询一个月的时候数据都是全部出来的,如果分拆3次的话就没问题,为什么呢。2. mysql sql where id in(25,12,87) 结果集如何用按照 25 12 87排序?3. arp_announce4. python - 通过正则提取出来的ip,怎么命名5. 微信$data =file_get_contents(’php://input’)取不到数据,抓包6. python - 关于NumPy数组操作的问题7. python - 求一个在def中可以实现调用本def满足特定条件continue效果的方法(标题说不太清楚,请见题内描述)8. angular.js使用$resource服务把数据存入mongodb的问题。9. index.php错误,求指点10. mysql优化 - mysql EXPLAIN之后怎么看结果进行优化 ?