微信小程序实现的一个登录页面Demo

这篇具有很好参考价值的文章主要介绍了微信小程序实现的一个登录页面Demo。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

微信小程序登录页面示例代码,包括了获取验证码按钮等30秒点一次功能和勾选同意用户条款的功能,仅供参考,效果图如下

微信小程序登录页面,微信小程序的开发锦囊,微信小程序,css,前端

*.wxml文件:
<view class="login">
  <image class="logo" src="/images/logo.png"></image>
  <form bindsubmit="onSubmit">
    <view class="input-item">
      <input placeholder="请输入手机号" bindinput="onInputPhone" maxlength="11" type="number" required></input>
    </view>
    <view class="input-item">
      <input placeholder="请输入验证码" bindinput="onInputCode" maxlength="6" type="number" required></input>
      <button class="code-btn" bindtap="onGetCode" disabled="{{disabled}}" class="{{disabled?'disabled':''}}">{{codeText}}</button>
    </view>
    <view class="checkbox-item">
      <checkbox value="{{agreement}}" bindchange="onAgree">我已阅读并同意《用户条款》</checkbox>
    </view>
    <button class="login-btn" type="primary" form-type="submit" disabled="{{!agreement}}">登录</button>
  </form>
</view>

*.wxss文件:

css
.login {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100vh;
}
.logo {
  width: 80px;
  height: 80px;
  margin-bottom: 20px;
}
.input-item {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}
input {
  flex: 1;
  height: 40px;
  padding-left: 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
}
.code-btn {
  width: 100px;
  height: 40px;
  margin-left: 10px;
  color: #fff;
  background-color: #4caf50;
  border-radius: 4px;
  border: none;
  outline: none;
}
.code-btn.disabled {
  color: #ccc;
  background-color: #eee;
}
.checkbox-item {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 20px;
}
.login-btn {
  width: 100%;
  height: 44px;
  color: #fff;
  background-color: #4caf50;
  border-radius: 4px;
  border: none;
  outline: none;
}
.login-btn:disabled {
  background-color: #ccc;
}
*.js文件:
Page({
  data: {
    phone: '',
    code: '',
    disabled: false,
    codeText: '获取验证码',
    agreement: false
  },
  onInputPhone(e) {
    this.setData({
      phone: e.detail.value
    })
  },
  onInputCode(e) {
    this.setData({
      code: e.detail.value
    })
  },
  onGetCode() {
    // 在按钮被点击后改变按钮状态为disabled,并修改按钮文字为30s后重试
    let count = 30
    let timer = setInterval(() => {
      count--
      if (count === 0) {
        clearInterval(timer)
        this.setData({
          disabled: false,
          codeText: '获取验证码'
        })
      } else {
        this.setData({
          codeText: `${count} 秒后重试`
        })
      }
    }, 1000)
    this.setData({
      disabled: true
    })
    // 获取验证码逻辑代码
    // TODO:
  },
  onAgree(e) {
    this.setData({
      agreement: e.detail.value.length > 0
    })
  },
  onSubmit(e) {
    const phoneReg = /^1[3456789]\d{9}$/
    if (!phoneReg.test(this.data.phone)) {
      wx.showToast({
        title: '请输入正确的手机号码',
        icon: 'none'
      })
      return
    }
    if (!this.data.code) {
      wx.showToast({
        title: '请输入验证码',
        icon: 'none'
      })
      return
    }
    if (!this.data.agreement) {
      wx.showToast({
        title: '请同意用户条款',
        icon: 'none'
      })
      return
    }
    // 登录请求逻辑代码
    // TODO:
  }
})

这个示例代码实现了一个登录页面,并且包括了输入手机号和验证码,获取验证码按钮,勾选同意用户条款,登录按钮等功能。

当用户输入的手机号或验证码格式不正确时,会有相应的提示信息;
当用户未同意用户条款时,登录按钮会被设置为 disabled 状态并且无法被点击。

在点击获取验证码按钮后,按钮会变成 disabled 状态,并且每隔1秒钟会更新一次倒计时的时间,直到倒计时结束后按钮状态会变回 enabled 状态。

如果您有小程序、APP、公众号、网站相关的需求,您可以通过私信来联系我

如果你有兴趣,可以关注一下我的综合公众号:biglead文章来源地址https://www.toymoban.com/news/detail-772956.html

到了这里,关于微信小程序实现的一个登录页面Demo的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序拍照页面自定义demo

    api文档

    2024年02月07日
    浏览(31)
  • 微信小程序登录页验证与页面跳转(二) ---结合SpringBoot和MySQL实现多用户登录

    Spring Boot的开发环境如下: 1、IDEA:2020 2、JDK版本:1.8 3、MySQL 版本:8 代码如下(示例): 打开IDEA,新建项目: 这里选择Spring lnitializr: 在接下来的页面中进行如下配置: 进行下一步:选择SpringBoot的版本,这里选择的是2.7.14 然后: 设置项目所在路径和设置项目名称: 项

    2024年01月22日
    浏览(43)
  • 微信小程序 + Java + Mysql(登录 Demo)

    目录 一、开发前准备 二、设计登录页面(小程序) 三、创建 Maven 项目 四、创建数据库与数据表 五、后台代码(Java Servlet) 六、运行 七、总结 建议  1、注册一个微信开发者账号:https://open.weixin.qq.com (略)  2、开发工具:idea、Mysql、微信开发者工具  3、应用技术:Ja

    2024年02月03日
    浏览(28)
  • 微信小程序 跳转页面经常会遇到判断是否登录情况。基于此需求,做了一个路由跳转拦截的jump组件

    组件代码非常简单 在根目录创建components目录 在components目录新建jump目录 在jump目录新建四个文件 index.js index.json index.wxml index.wxss 这个样式文件内容空就行

    2024年02月09日
    浏览(46)
  • 微信小程序通过wx.navigateBack实现返回上一个页面并调用方法

    需求 从A页面跳到B页面,B页面执行完所有步骤后返回A页面并调用A页面的方法 实现方法 主要用到 wx.navigateBack 和 wx.navigateTo 两个路由跳转方法,从A跳向B需要使用 wx.navigateTo ( 千万不能使用wx.redirectTo,这个跳转后页面就会销毁,无法通过wx.navigateBack返回 ) 参考文档 小程序官方对路

    2024年02月15日
    浏览(32)
  • spring boot3登录开发-微信小程序用户登录设计与实现

      ⛰️个人主页:     蒾酒 🔥系列专栏:《spring boot实战》 🌊山高路远,行路漫漫,终有归途 目录 写在前面 登录流程 流程解析 具体实现 相关代码 说明 服务端 小程序端 写在最后 本文介绍了springboot开发微信小程序后端服务中,用户登录功能的设计与实现,坚持看完相信

    2024年03月18日
    浏览(44)
  • 微信小程序登录注册页面代码

    以下是一个简单的微信小程序注册登录页面的代码示例: 上面代码中,index.wxml 文件定义了注册页面的视图,包括用户名、密码、确认密码的输入框以及提交按钮和一个跳转到登录页面的链接。index.js 文件定义了注册页面的逻辑,当用户点击提交按钮时会发送注册请求,并根

    2024年02月11日
    浏览(29)
  • 微信小程序授权登录,跳转页面后在跳回首页不用再次登录

           小程序授权登录要使用wx.getUserProfile,获得用户投头像后,做一些页面跳转功能,但是如果需要再次跳转首页的话,小程序就会有回到登录前的状态,这样体验感会很差。要想不用再次登录,也不难,只需要判断userInfo是否还存有信息就可以了。举个例子: 跳转后的

    2024年02月13日
    浏览(34)
  • SpringCloud微服务实战——搭建企业级开发框架:第三方登录-微信小程序授权登录流程设计和实现

      在前面的设计和实现中,我们的微服务开发平台通过JustAuth来实现第三方授权登录,通过集成公共组件,着实减少了很多工作量,大多数的第三方登录直接通过配置就可以实现。而在第三方授权登录中,微信小程序授权登录和APP微信授权登录是两种特殊的第三方授权登录

    2024年02月07日
    浏览(40)
  • 微信小程序实现路线规划demo

    本文旨在以mpvue框架为基础,探讨地图类小程序的开发思路。 原作者利用mpvue + 腾讯地图的能力做了一个地铁路线规划的小程序,主要提供全球主要城市的地铁线网图及旅游介绍,其中国内城市支持查看地图和路线规划。 目前腾讯位置服务也推出了路线规划插件、地铁图插件

    2024年02月08日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包