小程序样例5:简单登录界面

基本功能

1、头像选择、用户名、密码、昵称选择、性别、城市

2、确认注册跳转 我的页面。

3、其他注册方式跳转用户名 密码登录方式

4、清除 和 密码显示按钮:

5、用户名、密码合法性校验:

6、点击微信图标,调转回微信登录:

代码分析:

1、密码显示和不显示控制

参考:小程序密码显示与隐藏的实现_小程序password icon-CSDN博客

 通过变量来控制图标和输入文本框的样式:type

  <view class="section section_password">
      <view class="password-icon"></view>
      <input type="{{password_input_type}}" value="{{password}}" name="password" placeholder="请输入密码" bindinput="changePwd" />
      <image class="see-password-icon" src="../../../image/zhenyan.png" bindtap="seePassword" wx:if="{{!show_pass}}"/>
      <image class="see-password-icon" src="../../../image/biyan.png" bindtap="seePassword" wx:else/>
    </view>

2、用户名密码校验:

判断是电话还是邮箱

//判断用户填写的是username还是email
function judgeTelOrName(str){
  var phoneRegExp = new RegExp('^1[3|4|5|8][0-9]\d{4,8}$', 'g');
  var usernameRegExp = new RegExp('^(?![^a-zA-Z_]+$)(?!\D+$).{6,18}$', 'g');
  if(usernameRegExp.test(str)){
    return 'using_name';
  }else if(phoneRegExp.test(str)){
    return 'using_email';
  }else{
    return 'error';
  }
}

密码合法性检测:

// 密码合法性检测
    var pwdRegExp = new RegExp('^(?![^a-zA-Z_]+$)(?!\D+$).{6,18}$', 'g');
    if(!pwdRegExp.test(password)){
      wx.showToast({
        title: '密码设置不合理',
        duration: 3000,
        icon: "none"
      })
    }

3、使用form代替普通的<input>

input需要通过 bindinput="" 来获取输入的值,通过form可以一次性拿到所有值,只在提交的时候进行处理:

<form class="login-form" bindsubmit="doLogin" bindreset="formReset">
    <view class="section section_username">
      <view class="username-icon"></view>
      <input type="text" name="umt" value="{{umt}}" placeholder="用户名/邮箱" bindinput="changeUmt" />
      <icon class='clear' type="clear" bindtap="clearUmt" />
    </view>
    <view class="section section_password">
      <view class="password-icon"></view>
      <input type="{{password_input_type}}" value="{{password}}" name="password" placeholder="请输入密码" bindinput="changePwd" />
      <image class="see-password-icon" src="../../../image/zhenyan.png" bindtap="seePassword" wx:if="{{!show_pass}}"/>
      <image class="see-password-icon" src="../../../image/biyan.png" bindtap="seePassword" wx:else/>
    </view>
    <view class="section btn-area">
      <button class="submit" formType="submit">登录</button>
    </view>
    <view class="quick-link">
      <text class="left">快速注册</text>
      <text class="right">忘记密码?</text>
    </view>
  </form>

formType="submit" 就是提交动作,触发form上绑定的 bindsubmit="doLogin" 函数

完整代码下载:

https://download.csdn.net/download/u200814342A/88795758

 个人小程序创业项目   #小程序://朋友圈子/VMEWRjrOTum4Soa  有想法的朋友可以一起交流下~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/358660.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

模糊神经网络控制器(MATLAB)

模糊神经网络控制器(Fuzzy Neural Network Controller)是将模糊控制和神经网络相结合的一类控制器。它综合了两者的优点,主要包括以下特点: 知识表达能力强。模糊系统的语言规则和神经网络的学习能力相结合,可以表示复杂的非线性映射关系。 自适应能力强。神经网络提供了在线学…

幻兽帕鲁服务器部署教程(超详细)

幻兽帕鲁服务器部署教程&#xff08;超详细&#xff09; 文章目录 幻兽帕鲁服务器部署教程&#xff08;超详细&#xff09;[TOC] 前言一、怎么部署属于自己的幻兽帕鲁服务器一、怎么登录游戏体验&#xff1f; 前言 在帕鲁的世界&#xff0c;你可以选择与神奇的生物「帕鲁」一同…

HCIA学习作业五

拓扑图&#xff1a; PC端 PC1>ipconfig PC2>ipconfig PC3>ipconfig PC4>ipconfig PC>ping PC1>ping 192.168.1.125 PC1>ping 192.168.1.254 PC1>ping 192.168.1.253 PC2>ping 192.168.1.125 PC2>ping 192.168.1.253 PC3>ping 192.168.1.126…

蓝桥杯备战——9.读写AT24C02

1.分析原理图 由上图我们可以看到AT24C02通过IIC与单片机进行通讯&#xff0c;由于A0,A1,A2都接地&#xff0c;所以器件地址为0XA0。 2.IIC通讯协议 比赛的时候会提供IIC驱动代码&#xff0c;我们不需要自己去写&#xff0c;我这里简单贴出一份&#xff1a; #include "i…

电池-电量监测基础知识

一、为何要进行电池电量监测 不知各位有没有想过为何现在手机电池和笔记本电脑电池不容易鼓包了&#xff1f;十年前还经常出现的电池鼓包最近像是消失了一样&#xff0c;其实是因为随着电量监测技术的发展&#xff0c;哪怕是最基本的电子设备也有电池侧和产品侧至少两级电量监测…

1.30 C++ day4

思维导图 构造函数、析构函数、拷贝构造函数、拷贝赋值函数 代码 #include <iostream>using namespace std;class Stu//封装一个学生类 { private://私有属性string name;int id;double *score; public://公共属性//无参构造函数Stu(){cout << "Stu::无参构…

File、IO流(一)

File、IO流 File File是Java.io包下的类&#xff0c;File类的对象&#xff0c;用于代表当前操作系统的文件&#xff08;可以是文件、或者文件夹&#xff09;。 注意&#xff1a;File类只能对文件本身进行操作&#xff0c;不能读写文件里面存储的数据。 IO流 用于读写数据的&…

二叉树-堆实现

目录 Test.c测试代码 test1 test2 test3 &#x1f387;Test.c总代码 Heap.h头文件&函数声明 头文件 函数声明 &#x1f387;Heap.h总代码 Heap.c函数实现 ☁HeapInit初始化 ☁HeapDestroy销毁 ☁HeapPush插入数据 【1】插入数据 【2】向上调整Adjustup❗ …

nginx负载均衡案例

大家好今天给大家带来nginx负载均衡实验案例,首大家先看一下我的各类版本信息。&#xff08;还有两台设备信息相同就不展示了&#xff09; 一&#xff0c;搭建nginx环境 ❶首先创建Nginx的目录并进入&#xff1a; [rootlocalhost]# mkdir /soft && mkdir /soft/nginx…

java-JUC并发编程学习笔记03(尚硅谷)

线程间通信 例子&#xff1a; 对一个值1 -1交替完成&#xff0c;a的值就是1 b的值就是0 这个过程就是线程间通信 Synchronized实现&#xff1a; 虚假唤醒问题&#xff1a; 我们再添加两个线程。 我们发现我们的结果就不对了。 我们只需要使用while即可。 我们线程通信的最后一…

商品主图重复如何处理?淘宝、拼多多和阿里巴巴多店铺商品上架运营技巧

采集铺货的时候&#xff0c;商品主图重复上架有什么影响&#xff1f; 我们在1688、阿里国际站等采集货品&#xff0c;在抖音、淘宝、京东和拼多多进行售卖的时候&#xff0c;由于货源类似&#xff0c;经常会发现商品重复&#xff0c;无法在平台获得有效流量。以企业为纬度&…

【保驾护航】HarmonyOS应用开发者基础认证-题库-2024

通过系统化的课程学习&#xff0c;熟练掌握DevEco Studio&#xff0c;ArkTS&#xff0c;ArkUI&#xff0c;预览器&#xff0c;模拟器&#xff0c;SDK等HarmonyOS应用开发的关键概念&#xff0c;具备基础的应用开发能力。 考试说明 1、考试需实名认证&#xff0c;请在考前于个…

【云原生】consul自动注册,实现负载均衡器与节点服务应用解耦,批量管理容器

目录 一、consul解决了什么问题&#xff1f; 二、consul的模式 三、consul的工作原理 四、实操consul连接负载均衡与容器 步骤一&#xff1a;完成consul的部署 步骤二&#xff1a;完成gliderlabs/registrator:latest镜像的拉取&#xff0c;并完成启动 步骤三&#xff1a;…

二维数组的学习

前言 在前面我们学习了一维数组&#xff0c;但是有的问题需要用二位数组来解决。 二维数组常称为矩阵&#xff0c;把二维数组写成行和列的排列形式&#xff0c;可以有助于形象化的理解二维数组的逻辑结构。 一、二维数组的定义 二维数组定义的一般格式&#xff1a; 数据类型 数…

最新GPT4.0使用教程,AI绘画-Midjourney绘画,GPT语音对话使用,DALL-E3文生图+思维导图一站式解决

一、前言 ChatGPT3.5、GPT4.0、GPT语音对话、Midjourney绘画&#xff0c;文档对话总结DALL-E3文生图&#xff0c;相信对大家应该不感到陌生吧&#xff1f;简单来说&#xff0c;GPT-4技术比之前的GPT-3.5相对来说更加智能&#xff0c;会根据用户的要求生成多种内容甚至也可以和…

企业资产管理软件市场分析:预计2029年将达到91亿美元

固定资产是企业资产重要的组成部分&#xff0c;是企业赖以生存的基础&#xff0c;加强固定资产管理&#xff0c;对于保障企业稳定发展有着重要意义。但是&#xff0c;不少企业因资产管理模式落后&#xff0c;以致各项资产信息无法及时传递与共享&#xff0c;资产损耗和及时维护…

c语言学习笔记之字符串库函数和逗号表达式

逗号表达式 #include <stdio.h>int main(){int a 10;int b 5;int c 6;int d (a 23,b a-4,c b2);printf("%d",d); }打印结果为: 逗号表达式,从左往右依次进行,将最后一个表达式的值赋值给变量. c语言字符串相关库函数 求字符串长度strlen长度不受限制的…

【Linux】线程安全

线程安全 一、Linux线程互斥1、进程线程间的互斥相关背景概念&#xff08;1&#xff09;临界区和临界资源&#xff08;2&#xff09;互斥和原子性出现负数原因为什么--ticket不是一个原子操作&#xff1f; 2、互斥量mutex&#xff08;1&#xff09;互斥量的接口i、初始化互斥量…

[嵌入式软件][入门篇][仿真平台] STM32CubeMX的搭建

文章目录 一、简介二、STM32CubeMX的使用(1) 新建文件&#xff0c;芯片选型(2) sys设置和RCC设置(3) 配置时钟(4) 生成代码 三、仿真平台的使用 一、简介 STM32CubeMX是一种图形工具&#xff0c;通过分步过程可以非常轻松地配置STM32微控制器和微处理器&#xff0c;生成相应的初…

Java项目:基于SSM框架实现的医疗企业管理系统(ssm+B/S架构+源码+数据库+毕业论文)

一、项目简介 本项目是一套ssm815基于SSM框架实现的医疗企业管理系统&#xff0c;主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者。 包含&#xff1a;项目源码、数据库脚本等&#xff0c;该项目附带全部源码可作为毕设使用。 项目都经过严格调试&am…