当前位置:首页 » 《随便一记》 » 正文

使用Vue纯前端实现发送短信验证码并实现倒计时

22 人参与  2024年02月24日 18:51  分类 : 《随便一记》  评论

点击全文阅读


你好,我是小白Coding日志,一个热爱技术的程序员。在这里,我分享自己在编程和技术世界中的学习心得和体会。希望我的文章能够给你带来一些灵感和帮助。欢迎来到我的博客,一起在技术的世界里探索前行吧!
在实际的应用开发中,涉及用户登录验证、密码重置等场景时,通常需要前端实现发送短信验证码的功能,以提升用户体验和安全性。这个过程涉及与后端的协同配合,通过调用短信网关或短信服务接口,将验证码发送至用户手机。以下是一个简单的前端实现,演示了如何在用户点击发送验证码按钮时触发短信验证码的发送,并开始一个倒计时。

功能分析

遇事先认真分析是我今年在工作上的要求之一
将目标分解为小模块后再逐步完成。首先,我们需要一个手机号码输入框,并对输入的手机号码进行合法性校验。其次,需要一个验证码输入框,以及一个获取短信验证码的按钮。点击该按钮将向服务端发送获取请求,参数为输入的手机号码,并开始显示倒计时,倒计时结束后重新显示获取验证码按钮。服务端收到请求后会给该手机号码发送短信验证码,然后我们输入收到的验证码即可进行下一步操作。
项目使用vue3+vite+ElementPlus,这里假设你已经搭建好项目了!

页面实现
<el-form :model="form" label-width="120px">  <el-form-item label="手机号码:">    <el-input v-model="form.name" />  </el-form-item>  <el-form-item label="验证码:">    <el-input v-model="form.code" >      <template #suffix>        <div v-if="messageCodeVis" class="second-text">{{countdown}}秒后重新获取</div>        <el-button v-else type="primary" link @click="sendCode">获取验证码</el-button>      </template>    </el-input>  </el-form-item></el-form>  <el-button type="primary">确定</el-button>

image.png

实现倒计时

点击获取验证码按钮将触发 **sendCode** 函数,开始倒计时,并隐藏获取按钮,显示倒计时的秒数,倒计时结束后会重新显示获取按钮。你可以通过修改 **countdown** 变量的值来指定倒计时的总秒数。 **startCountdown** 函数是整个功能的核心是直接可以拿来用的。最后在点击发送按钮的时候对手机号码输入框中的号码做一个校验。

const sendCode = () =>{  const reg = /^1[3456789]\d{9}$/;  if (!reg.test(form.value.phone)) return  if(!form.value.phone) return ElMessage.error('请输入手机号码')  messageCodeVis.value = true  startCountdown()}/* 倒计时函数 */const startCountdown = () => {  const intervalId = setInterval(() => {    if (countdown.value > 0) {      countdown.value--;    } else {      clearInterval(intervalId)      messageCodeVis.value = false    }  }, 1000)}

即使代码逻辑很简单,也值得记录下来。我的编程目标是避免重复造轮子!?
祝小伙伴们新年快乐!?龙年大吉!
推荐一个AI生成红包封面的工具:https://github.com/all-in-aigc/aicover
在线demo: https://aicover.design
image.png
有需要的小伙伴自己上手体验一下吧!
如果觉得有用,就给我点个赞吧?
探索更多有趣知识,欢迎关注我的


点击全文阅读


本文链接:http://m.zhangshiyu.com/post/69816.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 家宴过后,我捉奸了庶妹和我老公后续+番外_庶妹老公侍卫读者推荐_小说后续在线阅读_无删减免费完结_
  • 首富老公为三姐妹点天灯挥金如土,我换嫁贺总轰动全国强推_胥淮岁岁过敏最新阅读_小说后续在线阅读_无删减免费完结_
  • 未婚夫和同事孕期领证,我转身嫁入豪门推荐_沈泽光安南拿泽光小编推荐_小说后续在线阅读_无删减免费完结_
  • 重回奥运种子选手陷害我的这天番茄热门_林子李梦冷笑在线看_小说后续在线阅读_无删减免费完结_
  • 知微向海完结全文_陆知衍纪瑶奶奶最新阅读_小说后续在线阅读_无删减免费完结_
  • 被污蔑送错外卖后,我杀疯了阅读_小徐胡闹阅读_小说后续在线阅读_无删减免费完结_
  • 我坐上评委席后,把我踢出乐队的男友悔疯了快手热门_乔枝姐阿媛程戬常读_小说后续在线阅读_无删减免费完结_
  • 当风吹落了雨TOP10_老公陈角鹰薇薇大反击_小说后续在线阅读_无删减免费完结_
  • 未婚夫逼我放弃继承权后,全家悔疯了一口气完结_沈雨雨柔养老校园甜文_小说后续在线阅读_无删减免费完结_
  • 手撕无耻老婆一家宝藏文_小姨子钟琳老公人气小说_小说后续在线阅读_无删减免费完结_
  • 愿得一人心常读_萧城蒋雪柔华冉优质全文_小说后续在线阅读_无删减免费完结_
  • 女士的玩具推文_杜小灵白月光杜雪必读文_小说后续在线阅读_无删减免费完结_

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1