Ionic + Angular.js实现验证码倒计时功能的方法


Posted in Javascript onJune 12, 2017

前言

之前跟大家分享了关于 Android 原生实现验证码倒计时,地址是这里,现在公司使用 Ionic 开发的 App 也要实现类似的功能,现在也记录下来,供大家参考:

效果图:

Ionic + Angular.js实现验证码倒计时功能的方法

正文

首先介绍下与本文相关的概念 $interval

$interval window.setInterval 的 Angular 包装形式,函数如果在没有被取消的时候会无限执行。(取消使用 cancel(promise) )

用法:

$interval(fn,delay,[count],[invokeApply],[Pass]);

参数说明:

  • fn : 无限执行的函数 必须参数,必传
  • delay : 每次调用的间隔毫秒数值 必须参数,必传
  • count : 循环次数的数值,如果没设置,则无限制循环 非必须参数,可不传
  • invokeApply : 如果设置为false,则避开脏值检查,否则将调用$apply 非必须参数,可不传
  • Pass : 函数的附加参数 非必须参数,可不传

方法:

1、cancel(promise)

      promise:$interval函数的返回值。

具体实现

$scope.description = "获取验证码";

 var timerHandler = null;

 /**
 * 倒计时
 * @param time 控制循环次数
 */
 var countDown = function (second,time) {
 timerHandler = $interval(function () {
  if (second <= 0) {
  $interval.cancel(timerHandler);
  second = 59;
  $scope.description = "获取验证码";
  } else {
  $scope.description = second + "s 后可重发";
  second--;
  }
 }, 1000, time)
 }

调用

countDown(59,60);

最后别忘了注入 $interval

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
javascript break指定标签打破多层循环示例
Jan 20 Javascript
有关json_decode乱码及NULL的问题
Oct 13 Javascript
js生成随机数的方法实例
Oct 16 Javascript
Javascript简写条件语句(推荐)
Jun 12 Javascript
AngularJS 输入验证详解及实例代码
Jul 28 Javascript
JS遍历页面所有对象属性及实现方法
Aug 01 Javascript
Bootstrap源码解读网格系统(3)
Dec 22 Javascript
Kindeditor单独调用多图上传实例
Jul 31 Javascript
基于javascript 显式转换与隐式转换(详解)
Dec 15 Javascript
使用async、enterproxy控制并发数量的方法详解
Jan 02 Javascript
vue-cli 3.x 修改dist路径的方法
Sep 19 Javascript
JavaScript Date对象功能与用法学习记录
Apr 28 Javascript
微信小程序 实现点击添加移除class
Jun 12 #Javascript
JavaScript该如何学习 怎样轻松学习JavaScript
Jun 12 #Javascript
微信小程序实现缓存根据不同的id来进行设置和读取缓存
Jun 12 #Javascript
利用Jasmine对Angular进行单元测试的方法详解
Jun 12 #Javascript
原JS实现banner图的常用功能
Jun 12 #Javascript
手把手搭建安装基于windows的Vue.js运行环境
Jun 12 #Javascript
JS获取鼠标坐标并且根据鼠标位置不同弹出不同内容
Jun 12 #Javascript
You might like
Get或Post提交值的非法数据处理
2006/10/09 PHP
用PHP连接Oracle数据库
2006/10/09 PHP
PHP时间戳与日期之间转换的实例介绍
2013/04/19 PHP
php目录拷贝实现方法
2015/07/10 PHP
php搜索文件程序分享
2015/10/30 PHP
javascript 写类方式之三
2009/07/05 Javascript
javascript不同类型数据之间的运算的转换方法
2014/02/13 Javascript
Jquery实现点击按钮,连续地向textarea中添加值的实例代码
2014/03/08 Javascript
Ext修改GridPanel数据和字体颜色、css属性等
2014/06/13 Javascript
使用JavaScript实现连续滚动字幕效果的方法
2015/07/07 Javascript
老生常谈JavaScript 函数表达式
2016/09/01 Javascript
通过bootstrap全面学习less
2016/11/09 Javascript
JS小数转换为整数的方法分析
2017/01/07 Javascript
微信小程序 页面传值详解
2017/03/10 Javascript
JS实现针对给定时间的倒计时功能示例
2017/04/11 Javascript
ionic中的$ionicPlatform.ready事件中的通用设置
2017/06/11 Javascript
小程序视频或音频自定义可拖拽进度条的示例代码
2018/09/30 Javascript
微信小程序仿知乎实现评论留言功能
2018/11/28 Javascript
angular中两种表单的区别(响应式和模板驱动表单)
2018/12/06 Javascript
VScode格式化ESlint方法(最全最好用方法)
2019/09/10 Javascript
JS函数进阶之继承用法实例分析
2020/01/15 Javascript
JS端基于download.js实现图片、视频时直接下载而不是打开预览
2020/05/09 Javascript
python生成lmdb格式的文件实例
2018/11/08 Python
python opencv 简单阈值算法的实现
2019/08/04 Python
python对数组进行排序,并输出排序后对应的索引值方式
2020/02/28 Python
python实现感知机模型的示例
2020/09/30 Python
python里反向传播算法详解
2020/11/22 Python
夜班门卫岗位职责
2013/12/09 职场文书
同学聚会主持词
2014/03/18 职场文书
中药学专业求职信
2014/05/31 职场文书
民主评议政风行风整改方案
2014/09/17 职场文书
防汛工作情况汇报
2014/10/28 职场文书
明星邀请函
2015/02/02 职场文书
停水通知
2015/04/16 职场文书
2016国庆节活动宣传语
2015/11/25 职场文书
【TED出品】天梯非主流开心游1700 划水骑士
2022/03/31 魔兽争霸