vue获取验证码倒计时组件


Posted in Javascript onAugust 26, 2019

本文实例为大家分享了vue获取验证码倒计时组件,供大家参考,具体内容如下

之前写过一个计时函数,有计算误差,但是验证码的60秒倒计时可以忽略这一点点误差。直接上代码。

vue获取验证码倒计时组件

<template>
 <div class="captcha-row">
 <input class="captcha-input" placeholder="输入验证码" auto-focus />
 <div v-if="showtime===null" class="captcha-button" @click="send">
  获取验证码
 </div>
 <div v-else class="captcha-button">
  {{showtime}}
 </div>
 </div>
</template>
<script>
export default {
 data() {
 return {
  // 计时器,注意需要进行销毁
  timeCounter: null,
  // null 则显示按钮 秒数则显示读秒
  showtime: null
 }
 },
 methods: {
 // 倒计时显示处理
 countDownText(s) {
  this.showtime = `${s}s后重新获取`
 },
 // 倒计时 60秒 不需要很精准
 countDown(times) {
  const self = this;
  // 时间间隔 1秒
  const interval = 1000;
  let count = 0;
  self.timeCounter = setTimeout(countDownStart, interval);
  function countDownStart() {
  if (self.timeCounter == null) {
   return false;
  }
  count++
  self.countDownText(times - count + 1);
  if (count > times) {
   clearTimeout(self.timeCounter)
   self.showtime = null;
  } else {
   self.timeCounter = setTimeout(countDownStart, interval)
  }
  }
 },
 send() {
  this.countDown(60);
 }
 },
}
</script>
<style lang="less" scoped>
.captcha-row {
 display: flex;
 .captcha-button {
 background: #048fff;
 color: white;
 display: flex;
 justify-content: center;
 align-items: center;
 padding: 4rpx 8rpx;
 width: 320rpx;
 border-radius: 4rpx;
 }
}
</style>

更多关于倒计时的文章请查看专题:《倒计时功能》

更多JavaScript时钟特效点击查看:JavaScript时钟特效专题

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Js 订制自己的AlertBox(信息提示框)
Jan 09 Javascript
javascript 面向对象编程 聊聊对象的事
Sep 17 Javascript
jquery滚动组件(vticker.js)实现页面动态数据的滚动效果
Jul 03 Javascript
javascript实现简单的Map示例介绍
Dec 23 Javascript
javascript间隔定时器(延时定时器)学习 间隔调用和延时调用
Jan 13 Javascript
JavaScript数据结构与算法之集合(Set)
Jan 29 Javascript
javascript ES6 新增了let命令使用介绍
Jul 07 Javascript
JS抛物线动画实例制作
Feb 24 Javascript
详解在React里使用&quot;Vuex&quot;
Apr 02 Javascript
微信小程序中限制激励式视频广告位显示次数(实现思路)
Dec 06 Javascript
基于Angular 8和Bootstrap 4实现动态主题切换的示例代码
Feb 11 Javascript
JS实现电脑虚拟键盘的操作
Jun 24 Javascript
seajs和requirejs模块化简单案例分析
Aug 26 #Javascript
JavaScript实现身份证验证代码实例
Aug 26 #Javascript
基于vue、react实现倒计时效果
Aug 26 #Javascript
tweenjs缓动算法的使用实例分析
Aug 26 #Javascript
JS实现利用闭包判断Dom元素和滚动条的方向示例
Aug 26 #Javascript
JS实现提示效果弹出及延迟隐藏的功能
Aug 26 #Javascript
小程序实现层叠卡片滑动效果
Aug 26 #Javascript
You might like
PHP 向右侧拉菜单实现代码,测试使用中
2009/11/03 PHP
php 记录进行累加并显示总时长为秒的结果
2011/11/04 PHP
使用pthreads实现真正的PHP多线程(需PHP5.3以上版本)
2014/05/05 PHP
php项目开发中用到的快速排序算法分析
2016/06/25 PHP
PHP实现生成带背景的图形验证码功能
2016/10/03 PHP
无缝滚动改进版支持上下左右滚动(封装成函数)
2012/12/04 Javascript
javascript怎么禁用浏览器后退按钮
2014/03/27 Javascript
jQuery选择器源码解读(八):addCombinator函数
2015/03/31 Javascript
简介JavaScript中Math.LOG10E属性的使用
2015/06/14 Javascript
快速学习jQuery插件 Cookie插件使用方法
2015/12/01 Javascript
jQuery控制div实现随滚动条滚动效果
2016/06/07 Javascript
JavaScript 闭包详细介绍
2016/09/28 Javascript
Vue数据驱动模拟实现5
2017/01/13 Javascript
jquery 一键复制到剪切板的实例
2017/09/20 jQuery
react-navigation 如何判断用户是否登录跳转到登录页的方法
2017/12/01 Javascript
jquery引入外部CDN 加载失败则引入本地jq库
2018/05/23 jQuery
微信小程序动态增加按钮组件
2018/09/14 Javascript
浅谈vue同一页面中拥有两个表单时,的验证问题
2018/09/18 Javascript
JS数组方法shift()、unshift()用法实例分析
2020/01/18 Javascript
Vue Cli3 打包配置并自动忽略console.log语句的方法
2020/04/23 Javascript
Node.js API详解之 readline模块用法详解
2020/05/22 Javascript
解决vue2中使用elementUi打包报错的问题
2020/09/22 Javascript
解决Vue项目中tff报错的问题
2020/10/21 Javascript
JavaScript 中判断变量是否为数字的示例代码
2020/10/22 Javascript
Python数据可视化编程通过Matplotlib创建散点图代码示例
2017/12/09 Python
python中字符串的操作方法大全
2018/06/03 Python
python使用Plotly绘图工具绘制柱状图
2019/04/01 Python
使用Python控制摄像头拍照并发邮件
2019/04/23 Python
Python中包的用法及安装
2020/02/11 Python
New Balance澳大利亚官网:运动鞋和健身服装
2019/02/23 全球购物
eharmony澳大利亚:网上约会服务
2020/02/29 全球购物
什么是Oracle的后台进程background processes?都有哪些后台进程?
2012/04/26 面试题
24岁生日感言
2014/01/13 职场文书
员工评语范文
2014/12/31 职场文书
2016年春节问候语
2015/11/11 职场文书
Nginx下配置Https证书详细过程
2021/04/01 Servers