微信小程序:获取验证码

微信小程序-验证码 1.服务器 package com.ruoyi.project.system.user.controller; import java.awt.image.BufferedImage; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.util.Base64; import javax.... 阅读详情

本篇主要介绍微信小程序实现倒计时60s获取验证码的功能,及其需要注意的细节。具体实现可以参考我GitHub 上的 demo,有需要的可以下载 ,替换自己的APPID即可运行。更多知识点也可以参考我的简书

实现功能

1、实现了手机号码的判断(正则判断手机号码)
2、实现了计时器

实现效果

获取验证码

实现代码

*.js文件里面为主要逻辑代码,这里需要注意到,手机号码的验证、密码的验证、验证码的验证(前端验证或是后端验证)

var util = require('../../utils/util.js');  
var interval = null //倒计时函数

Page({

  /**
   * 页面的初始数据
   */
  data: {
    username: '',
    password: '', 
    authcode: '',
    time: '获取验证码', //倒计时 
    currentTime: 60,//限制60s
    isClick:false,//获取验证码按钮,默认允许点击
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

 },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {


  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },

  /**
   * 用户名和密码 
   * */
  usernameInput: function (event) {
    // console.log("username==",event.detail.value)
    this.setData({ username: event.detail.value })
  },

  passwordInput: function (event) {
    // console.log("password==", event.detail.value)
    this.setData({ password: event.detail.value })
  },

  authcodeInput: function (event) {
    // console.log("password==", event.detail.value)
    this.setData({ authcode: event.detail.value })
  },

  /**
   * 获取验证码
   */
  gainAuthCodeAction:function(){
    let that = this;
    /*第一步:验证手机号码*/
    var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1})|(17[0-9]{1}))+\d{8})$/;// 判断手机号码的正则
    if (that.data.username.length == 0) {
      util.progressTips('手机号码不能为空')
      return;
    }

    if (that.data.username.length < 11) {
      util.progressTips('手机号码长度有误!')
      return;
    }

    if (!myreg.test(that.data.username)) {
      util.progressTips('错误的手机号码!')
      return;
    }
    /*第二步:设置计时器*/
    // 先禁止获取验证码按钮的点击
    that.setData({
      isClick: true,
    })
    // 60s倒计时 setInterval功能用于循环,常常用于播放动画,或者时间显示
    var currentTime = that.data.currentTime;
    interval = setInterval(function(){
      currentTime--;//减
      that.setData({
        time: currentTime + '秒后获取'
      })
      if (currentTime <= 0) {
        clearInterval(interval)
        that.setData({
          time: '获取验证码',
          currentTime: 60,
          isClick: false
        })
      }
    },1000);
    /*第三步:请求验证码接口,并记录服务器返回的验证码用于判断,这里服务器也可能不返回验证码,那验证码的判断交给后台*/
    // wx.request({})
  },

  /**
   * 登录
   */
  loginBtnClick: function () {
    let that = this;
    // 判断账户、密码、验证码
    // wx.request({})
  }
})
微信小程序获取手机号登录,从免费到收费后,我的低成本替代方案(附完整代码) 本文探讨了微信小程序从免费获取手机号登录到收费后的低成本替代方案,提供了三种实战验证的登录策略优化方法。通过混合登录策略、成本优化技巧和企业级用户体系设计,开发者可显著降低手机号接口调用成本,同时保持用户体验。文章还附有完整代码示例,帮助开发者快速实现高效登录体系。 阅读详情

相关推荐

微信小程序手机号一键登录实战:从open-type到后端验证全流程解析

本文详细解析了微信小程序实现手机号一键登录的全流程。从前端使用open-type为getPhoneNumber的按钮获取授权,到后端通过code换取session_key并解密手机号,最后完成用户绑定与系统集成。文章还探讨了应对微信接口收费策略的实用方案,为开发者提供了一套从技术实现到成本控制的完整实战指南。

rice5的博客 495

微信小程序(小程序的生命周期)

Page({ /** * 页面的初始数据 */ data: { textstr:1 }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { console.log("load"); }, /** * 生命周期函数--监听页面初次渲染完成 */ onRea...

一点一滴 1万+

微信小程序 - 实现获取手机验证码倒计时 60 秒(手机号+验证码登录功能)

当点击获取验证码按钮时,会自动进入倒计时,同时按钮无法点击,您可以自定义倒计时时间,如下图所示: 这块由于方便您观察,暂时设置成了10秒。您可以随便找个干净的页面,直接运行即可。 样式的话,您可以根据需求自己来写。 实现获取验证码的倒计时功能,获取手机验证码倒计时。...

🏆 前端领域优质创作者 3565

微信小程序实现活动倒计时

微信小程序实现活动倒计时

苏苏就是小苏苏的博客 1870

微信小程序 - 详细实现手机号验证码倒计时60秒功能示例代码,短信验证码登录倒计时的时候禁用点击按钮避免重复发送,达到60秒后自动解除按钮禁用,适用于验证用户手机号时发送验证码场景(频繁发送风控逻辑)

微信小程序,vue2,vue3,短信验证码,手机号验证码,倒计时60秒,获取验证码倒计时组件,前端vue实现验证码60秒倒计时,按钮控制,实现获取验证码按钮60s倒计时,实现短信倒计时60秒的方法,禁用按钮,禁止频繁点击,微信小程序 短信验证码登录 倒计时,输入手机号,获取验证码的倒计时功能,倒计时器,vue发验证码的倒计时器,发送短信验证码并实现倒计时,验证码60s,微信小程序中验证码倒计时计数的实例,发送短信验证码后60秒倒计时,微信小程序如何实现获取验证码后倒计时效果,在微信小程序开发中,详解实现小程

🏆 前端领域优质创作者 4415

微信小程序开发:绑定手机号获取验证码功能

在移动开发的时候,通过手机号获取验证码进行账号注册或者修改密码等操作是非常常见的操作,不管是在iOS开发、Android开发、flutter开发或者是微信小程序开发,都是如此。那么本篇博文就来分享一下微信小程序开发的时候,实现通过手机号获取验证码的功能。 其实微信小程序实现上述功能也不算什么难的功能,无非就是手机号的校验,以及调用接收短信验证码接口等流程。本博文直接通过实例代码案例来直观展示功能实现,直接贴文件代码是为了方便新手直接使用,请根据实际情况选择性参考,多谢支持。具体实现如下所示: 1、reg

全沾软贱开发攻城狮 1万+

uniapp 【微信小程序】获取验证码 倒计时

uniapp 微信小程序 获取验证码和倒计时

caoshaoze的博客 800

从零构建2.4G无线通信系统:MSPM0G3507与NRF24L01的深度协同设计

本文详细介绍了基于MSPM0G3507微控制器与NRF24L01射频模块构建2.4G无线通信系统的深度协同设计方案。内容涵盖系统架构、SPI通信优化、功耗管理、抗干扰机制及中断/DMA高效利用,为工业物联网应用提供高可靠、低功耗的无线传输解决方案。

rice5的博客 821

微信小程序验证码获取攻略:让你秒懂如何快速获取验证码

微信小程序验证码获取攻略:让你秒懂如何快速获取验证码

希望看完文章的你能够带着答案离开。 8104

Win11下高效管理JDK1.8与JDK17双环境的实战指南

本文提供了一份在Windows 11系统上高效管理JDK 1.8与JDK 17双环境的实战指南。文章详细讲解了如何实现双版本切换,包括如何干净安装两个JDK、通过巧妙配置环境变量实现命令行一键切换,以及在不同IDE和构建工具中为项目独立配置JDK版本,旨在帮助Java开发者彻底解决版本冲突问题,提升开发效率。

ipfs8storage的博客 543

IDEA系列(四):IDEA导入Maven工程项目并配置Tomcat启动

本片文章主要介绍如何导入一个存在的maven项目并配置Tomcat启动项目,方便自己使用,也分享出来,希望可以帮助到其他人。

低调D树苗的博客 1243

微信小程序:实现获取验证码及倒计时按钮

微信小程序:实现获取短信验证码及倒计时 wxml <block wx:if="{{Num==60 || Num==-1}}"> <button bindtap="countDown">获取验证码</button> </block> <block wx:else> <button disabled='{{isDisabled}}'>{{Num}}s后重新发送</button> </block> j

qq_52126119的博客 1021

R语言实战:三因素方差分析(ANOVA)从入门到精通(附完整代码解析)

本文详细介绍了如何使用R语言进行三因素方差分析(ANOVA),从数据准备、模型构建到结果解读与可视化,提供完整代码解析。通过实战案例,帮助读者掌握复杂交互效应的分析方法,适用于科研、教育等多个领域的数据分析需求。

weixin_29081101的博客 244

微信小程序:自定义组件传值——获取手机验证码

一:遇到的问题 通过自己自定义的组件编写的表单,发现传值不了,点击后收到的值为空。

软件测试技术交流分享 484

TP4056锂电池充电电路设计原理与工程实践

锂离子电池充电管理是嵌入式电源系统的核心基础技术,其本质是通过恒流恒压(CC/CV)控制策略,匹配电池电化学特性以实现安全、高效、长寿命充放电。TP4056作为典型线性充电IC,以精简外围实现预充、恒流、恒压及自动截止全周期管理,但受限于线性拓扑的热耗散特性,必须协同散热设计、电阻精度选型与PCB布局进行系统级优化。该方案广泛应用于STM32智能小车、便携传感器节点等3.7V单节锂电供电场景,兼顾成本、可靠性与工程可实施性,是入门嵌入式硬件电源设计的关键实践范例。

weixin_36064575的博客 219

ENVI预处理GF-1号WFV1遥感数据提取NDVI指数

使用ENVI处理GF-1号遥感数据提取NDVI指数

所有专家都曾始于新手 8177

微信小程序之获取验证码js

在微信小程序中怎样实现获取验证码的倒计时功能捏,倒计时的原理是一样一样的,就是某些地方需要注意。第一步:结构&lt;view class='getcode' wx:if="{{isGet == false}}" bindtap='getCode'&gt;获取验证码&lt;/view&gt; &lt;view class='getcode' wx:if="{{isGet == true}}"&gt;...

dkh_321的博客 2295

古月居ros2入门21讲里面7.节点:机器人的工作细胞,报错:QSocketNotifier: Can only be used with threads started...如何解决?

🏆本文收录于 《全栈Bug调优(实战版)》 专栏,该专栏专注于分享我在真实项目开发中遇到的各类疑难Bug及其深层成因,并系统提供高效、可复现的解决思路和实操方案。无论你是刚入行的新手开发者,还是拥有多年项目经验的资深工程师,本专栏都将为你提供一条系统化、高质量的问题排查与优化路径,助力你加速成长,攻克技术壁垒,迈向技术价值最大化与职业发展的更高峰🚀!

**My Coding Family** 1824

榛子云短信-微信小程序60秒倒计时插件

为了帮助开发者更便捷的使用微信小程序的短信验证码功能,特别是初学者更好的使用,榛子云短信特地开发了60秒倒计时插件,效果: 使用方法 1.引入插件countdown.js var CountDown = require('../../utils/countdown.js'); 2.在 onLoad 周期初始化 onLoad: function () { ...

zuoliangzhu的专栏 2068

点云统计滤波 (python详细过程版)【2025最新版】

统计滤波python详细过程版,博客长期更新,本文最近更新时间为:2025年1月12日。

点云侠的博客 5637

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

微信小程序手机号获取实战:Java后端实现与优化

本文详细介绍了微信小程序中手机号获取功能的Java后端实现与优化方案。从基本原理到具体代码实现,涵盖了access_token获取、手机号换取、性能优化及安全防护等关键环节,帮助开发者高效完成微信小程序手机号获取功能开发。

weixin_30352645的博客 571

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

别再只用open-type了!微信小程序登录全方案对比:手机号、微信授权、手机验证码

本文深度解析微信小程序登录方案,对比open-type、手机号授权和短信验证码等多种策略,提供技术实现、成本分析和合规建议。重点探讨getPhoneNumber接口的优化使用,帮助开发者在安全合规前提下提升用户登录体验和转化率。

weixin_30374009的博客 595

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

微信小程序实现点击获取验证码倒计时结束可再点击功能

效果图 js Page({ data: { //点击前的文本内容 text: '发送验证码', //控制按钮能否点击 disabled: false, //倒计时时间 time: 60, //定时器 timer: '' }, //点击方法 send: function() { //将按钮设置为禁用 this.setData({ disabled: true }) //给定时器赋值 this.data.time

qq_43447509的博客 1017

微信小程序验证码获取倒计时

wxml <button disabled='{{disabled}}' bindtap="goGetCode">{{code}}</button> js data:{ disabled: false, code: '获取验证码', }, goGetCode:function(){ var that = this; var time =...

weixin_30500473的博客 153
上一篇: 微信小程序:授权问题(scope.userInfo【废弃】)
下一篇: 如何在mac上运行vue项目
黑萝卜不黑
博客等级 码龄11年 41粉丝 103原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值