vue实现验证码倒计时功能

简介: vue实现验证码倒计时功能

 之前在公司实习时,主要从事于前端开发。公司当时主要是在开发一个管理系统,关于金融方面的。

前端开发技术主要是用到了vue全家桶、elementUI,以及vue相关的插件等。当时公司是IDEA进行开发,但我推荐用VSCode进行开发,具体还是要按照公司的要求来。

首先说一说验证码计时功能

image.png

 <el-button v-bind:class="{grey:isGrey,blue:!isGrey}" 
            v-bind:disabled="dis" type="primary" 
            @click="getCode">
      <span v-if="show">发送验证码</span>
      <span v-else>重新发送({{count}}s)</span>
  </el-button>

v-bind是vue.js的指令用于绑定数据和元素属性,想具体了解可以去官网查看,这里是用来控制按钮的css样式。

JS代码(基于vue2.0);

<script>
export default {
  data() {
    return {
      dis: false,
      show: true,
      isGrey: false, //按钮样式
      timer: null, //设置计时器,
      count: ""
    };
  },
  methods: {
    getCode() {
      let TIME_COUNT = 60;
      if (!this.timer) {
        this.count = TIME_COUNT;
        this.isGrey = true;
        this.show = false;
        this.dis = true;
        this.timer = setInterval(() => {
          if (this.count > 0 && this.count <= TIME_COUNT) { 
            this.count--;
          } else {
            this.dis = false;
            this.isGrey = false;
            this.show = true;
            clearInterval(this.timer);
            this.timer = null;
          }
        }, 1000);
      }
    }
  }
};
</script>

CSS代码:

 .grey{
    background-color: #EDEEF1;
    border-color: #EDEEF1;
    color:#666;
    width: 30%;
  }
  .blue{
    background-color: #64A0DD;
    border-color: #64A0DD;
  }



相关文章
|
6月前
|
JSON 自然语言处理 前端开发
【01】对APP进行语言包功能开发-APP自动识别地区ip后分配对应的语言功能复杂吗?-成熟app项目语言包功能定制开发-前端以uniapp-基于vue.js后端以laravel基于php为例项目实战-优雅草卓伊凡
【01】对APP进行语言包功能开发-APP自动识别地区ip后分配对应的语言功能复杂吗?-成熟app项目语言包功能定制开发-前端以uniapp-基于vue.js后端以laravel基于php为例项目实战-优雅草卓伊凡
273 72
【01】对APP进行语言包功能开发-APP自动识别地区ip后分配对应的语言功能复杂吗?-成熟app项目语言包功能定制开发-前端以uniapp-基于vue.js后端以laravel基于php为例项目实战-优雅草卓伊凡
|
5月前
|
存储 JavaScript 前端开发
基于 ant-design-vue 和 Vue 3 封装的功能强大的表格组件
VTable 是一个基于 ant-design-vue 和 Vue 3 的多功能表格组件,支持列自定义、排序、本地化存储、行选择等功能。它继承了 Ant-Design-Vue Table 的所有特性并加以扩展,提供开箱即用的高性能体验。示例包括基础表格、可选择表格和自定义列渲染等。
367 6
|
8月前
|
JavaScript 前端开发
【Vue.js】监听器功能(EventListener)的实际应用【合集】
而此次问题的核心就在于,Vue实例化的时机过早,在其所依赖的DOM结构尚未完整构建完成时就已启动挂载流程,从而导致无法找到对应的DOM元素,最终致使计算器功能出现异常,输出框错误地显示“{{current}}”,并且按钮的交互功能也完全丧失响应。为了让代码结构更为清晰,便于后续的维护与管理工作,我打算把HTML文件中标签内的JavaScript代码迁移到外部的JS文件里,随后在HTML文件中对其进行引用。
123 8
|
10月前
|
存储 JavaScript 前端开发
介绍一下Vue的核心功能
介绍一下Vue的核心功能
338 17
|
11月前
|
JavaScript 前端开发 API
|
11月前
|
JavaScript API UED
vue.js怎么实现全屏显示功能
【10月更文挑战第7天】
375 1
|
11月前
|
资源调度 JavaScript UED
如何使用Vue.js实现单页应用的路由功能
【10月更文挑战第1天】如何使用Vue.js实现单页应用的路由功能
|
10月前
|
JavaScript
vue实现移动端6格验证码源码
这是一个vue移动端6格验证码特效,可支持自动填充,根据项目需求,可将发送验证码功能抽离成单独的组件使用。简单好用,欢迎下载!
114 0
|
3月前
|
人工智能 JavaScript 算法
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
491 0
|
3月前
|
JavaScript UED
用组件懒加载优化Vue应用性能
用组件懒加载优化Vue应用性能