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 相关文章推荐
基于jquery的滚动条滚动固定div(附演示下载)
Oct 29 Javascript
js判断undefined变量类型使用typeof
Jun 03 Javascript
JavaScript中的变量作用域介绍
Dec 31 Javascript
js实现当前输入框高亮显示的方法
Aug 19 Javascript
JS常见简单正则表达式验证功能小结【手机,地址,企业税号,金额,身份证等】
Jan 22 Javascript
深入理解javascript的getTime()方法
Feb 16 Javascript
Javascript中Promise的四种常用方法总结
Jul 14 Javascript
iscroll动态加载数据完美解决方法
Jul 18 Javascript
nginx配置React静态页面的方法教程
Nov 03 Javascript
JavaScript实现数值自动增加动画
Dec 28 Javascript
JS实现生成由字母与数字组合的随机字符串功能详解
May 25 Javascript
Vue中this.$nextTick的作用及用法
Feb 04 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中执行系统外部命令
2006/10/09 PHP
php实现根据字符串生成对应数组的方法
2014/09/22 PHP
PHP编程实现脚本异步执行的方法
2017/08/09 PHP
初探jquery——表单应用范例
2007/02/20 Javascript
巧用js提交表单轻松解决一个页面有多个提交按钮
2013/11/17 Javascript
JS实现可调整倒计时间代码分享
2015/08/18 Javascript
javascript中利用柯里化函数实现bind方法
2016/04/29 Javascript
使用jQuery中的wrap()函数操作HTML元素的教程
2016/05/24 Javascript
JavaScript使用forEach()与jQuery使用each遍历数组时return false 的区别
2016/08/26 Javascript
js实现String.Fomat的实例代码
2016/09/02 Javascript
vue 基于element-ui 分页组件封装的实例代码
2018/12/10 Javascript
微信小程序学习笔记之文件上传、下载操作图文详解
2019/03/29 Javascript
Python实现CET查分的方法
2015/03/10 Python
git使用.gitignore设置不生效或不起作用问题的解决方法
2017/06/01 Python
Python生成数字图片代码分享
2017/10/31 Python
用python的requests第三方模块抓取王者荣耀所有英雄的皮肤实例
2017/12/14 Python
Django自定义manage命令实例代码
2018/02/11 Python
python高级特性和高阶函数及使用详解
2018/10/17 Python
详解PyCharm+QTDesigner+PyUIC使用教程
2019/06/13 Python
Python多线程获取返回值代码实例
2020/02/17 Python
Python使用Socket实现简单聊天程序
2020/02/28 Python
Python实现井字棋小游戏
2020/03/09 Python
澳大利亚牛仔裤商店:Just Jeans
2016/10/13 全球购物
土耳其风格手工珠宝:Ottoman Hands
2019/07/26 全球购物
火山咖啡:Volcanica Coffee
2019/10/29 全球购物
init进程的作用
2015/08/20 面试题
经贸日语专业个人求职信范文
2013/12/28 职场文书
英文演讲稿
2014/05/15 职场文书
小学四年级学生评语
2014/12/26 职场文书
毕业论文致谢部分怎么写
2015/05/14 职场文书
2015年药品销售工作总结范文
2015/05/25 职场文书
JavaScript 语句之常用 for 循环详解
2021/03/29 Javascript
Html分层的box-shadow效果的示例代码
2021/03/30 HTML / CSS
Python基础之元组与文件知识总结
2021/05/19 Python
磁贴还没死, 微软Win11可修改注册表找回Win10开始菜单
2021/11/21 数码科技
Java 中的 Lambda List 转 Map 的多种方法详解
2022/07/07 Java/Android