微信小程序注册完整实例,发送短信验证码,带60秒倒计时功能,无需服务器端。效果图:
代码:
index.wxml
!索引。wxml-view class=' container ' view class=' row '输入占位符='请输入姓名绑定输入=' BindNameInput '//视图视图类=' row '输入占位符='请输入手机号绑定输入=' BindPhoneInput '//视图视图类=' row '输入占位符='请输验证码bind input=' bindcode input ' style=' width :70%;/button class=' CodeBtn ' bind tap=' GetCode ' hidden=' { { hidden } } ' disabled=' { { BTndisabled } } ' { { BTN value } }/button/view view view view button class=' save ' bind tap=' save '保存/button /view /viewindex.js
//索引。jsvar Zhen zims=require('././utils/Zhen zims。js’);//获取应用实例const app=GetApp();page({ data : { hidden : true,btnValue: ' ',btnDisabled:false,name: ' ',phone: ' ',code: ' ',second: 60 },onLoad: function () { },//姓名输入bindNameInput(e){ this。setdata({ name : e . detail。value })},//手机号输入bindponeinput(e){控制台。日志(例如详细信息。值);var val=e . detail。价值;这个。setdata({ phone : val })if(val!=' '){这个。setdata({ hidden : false,btnValue: '获取验证码})} else { this。setdata({ hidden : true })} },//验证码输入bindcode输入(e){ this。setdata({代码: e . detail。value })},//获取短信验证码getCode(e) { console.log('获取验证码');变量=这个;贞子。客户。init(' https://SMS _ developer。贞子姬。com ',' appId ',' appSecret ');贞子。客户。发送(函数如果数据。代码==0){那个。timer();返回;} wx。showtoast({ title : RES . data。数据,icon: 'none ',duration: 2000 }) },15801636347 ','验证码为:3322');},定时器:函数({让诺言=新诺言((解析,拒绝)={ let setTimer=setInterval(()={ var second=this。数据。second-1;this.setData({ second:秒,btnValue:秒'秒,btndisabled : true })如果(这。数据。second=0){ this。setdata({ second : 60,btnValue: '获取验证码,btndisabled : false })resolve(setTimer)} },1000) }) promise。然后((setTimer)={ clearInterval(setTimer)})},//保存保存{ console.log('姓名: '这个。数据。姓名);console.log('手机号: '这个。数据。电话);console.log('验证码: '这个。数据。代码);//省略提交过程}})index.wxss
/* *索引。wxss * */页面{高度: 100%;宽度: 100%;背景技术:线性梯度(#5681d7,# 486 ec3);显示: flex flex-方向:柱;}.容器{ display : flex flex-direction :柱;证明内容:空间环绕;宽度: 90%;margin: 50rpx auto}。第{位置:行相对;高度: 80rpx宽度: 100%;边界半径: 10 rpx背景# fff保证金-底部: 20 rpx左填充左: 20rpx盒子尺寸:边框盒子;}.行输入{宽度: 100%;高度:100%;}.codeBtn{ position:绝对值;右: 0;top : 0;color: # bbb宽度: 30%;font-size : 26rpx高度: 80rpx线高: 80 rpx}.subBtn { width : 200 rpx h8 : 80 rpx背景# fffcolor : # 000 border-radius : 50 rpx;线高: 80 rpx}完整下载: 下载
详情参考: http://smsow.zhenzikj.com/doc/sdk.html
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。