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. javascript - 使用form进行页面跳转,但是很慢,如何加一个Loading?2. javascript - ES6规范下 repeat 函数报错 Invalid count value3. angular.js - angularjs 注入模块报错 很怪异... 求解惑4. angular.js - 输入邮箱地址之后, 如何使其自动在末尾添加分号?5. javascript - JS 里面的 delete object.key 到底删除了什么?6. docker-machine添加一个已有的docker主机问题7. mysql - 电商如何存储营业额数据8. 管理员信息修改时的密码问题9. html5 - 为什么使使用vue cli 脚手架,post-css 没有自动对css3属性自动添加浏览器前缀呢?10. javascript - html5的data属性怎么指定一个function函数呢?
