vue实现发送短信倒计时和重发短信的功能

js实现发送短信倒计时功能

HTML代码部分

javascript 复制代码
        <el-button @click="queryBtn()" type="primary">发送短信({{countDown}})</el-button>
        <el-button @click="resetBtn()" type="danger" :disabled="resetBtndisab">重发</el-button>

JS代码部分

javascript 复制代码
export default {
    data(){
        return {
            countDown:60, // 默认时间60秒
            countDownTimeout:null,  // 倒计时计数器
            resetBtndisab:true, //重发按钮初始值为不可用
        }
    },
    methods:{
            // 查询按钮
            queryBtn(){
                 this.doCountDown()
            },
            // 重置按钮
            resetBtn(){
                 this.$message({
                        message: '短信验证码已发送,请注意查收!',
                        type: 'success'
                 });
                 this.resetCountDown();
                 this.resetBtndisab=true
            },
            // 倒计时开始
            doCountDown(){
                this.countDownTimeout=setTimeout(()=>{
                    this.countDown--;
                    if(this.countDown<=0){
                            this.resetBtndisab=false
                    }else{
                        this.doCountDown(this.countDown)
                    }
                },1000)
		    },
            // 重置倒计时
            resetCountDown(){
                clearTimeout(this.countDownTimeout);
                this.countDown=60;
            }

    }
}

实际展示效果



相关推荐
晚霞的不甘15 分钟前
Flutter for OpenHarmony《智慧字典》 App 主页深度优化解析:从视觉动效到交互体验的全面升级
前端·flutter·microsoft·前端框架·交互
我是伪码农18 分钟前
Vue 1.28
前端·javascript·vue.js
鹓于22 分钟前
Excel一键生成炫彩二维码
开发语言·前端·javascript
siwangdexie_new22 分钟前
html格式字符串转word文档,前端插件( html-docx-js )遇到兼容问题的解决过程
前端·javascript·html
子春一36 分钟前
Flutter for OpenHarmony:构建一个智能长度单位转换器,深入解析 Flutter 中的多字段联动、输入同步与工程化表单设计
开发语言·javascript·flutter
2601_9496130239 分钟前
flutter_for_openharmony家庭药箱管理app实战+用药提醒列表实现
服务器·前端·flutter
利刃大大39 分钟前
【Vue】scoped作用 && 父子组件通信 && props && emit
前端·javascript·vue.js
-凌凌漆-1 小时前
【Vue】Vue3 vite build 之后空白
前端·javascript·vue.js
心柠1 小时前
前端工程化
前端
摘星编程1 小时前
用React Native开发OpenHarmony应用:useImperativeHandle暴露实例方法
javascript·react native·react.js