我的编程空间,编程开发者的网络收藏夹
学习永远不晚

vue如何实现登陆页面

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

vue如何实现登陆页面

这篇文章主要介绍“vue如何实现登陆页面”,在日常操作中,相信很多人在vue如何实现登陆页面问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue如何实现登陆页面”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

分几个部分考虑,

一、输入框input的校验:1、blur时没有值和格式不符合的逻辑校验
2、限制输入长度逻辑,比如手机号只能11位,验证码只能6位。
二、验证码按钮逻辑
1、不同状态下验证码颜色,文案,是否能点击,是否显示记数需要兼顾。
2、验证码能够正常点击是在手机号格式正确情况下,所以这里要有个监听手机号,一旦格式符合,验证码生效
3、关于计数器的逻辑。

以下会从上面的点开考虑:

一、input的校验没有可说的,记住俩点,一个控制输入长度,一个控制格式。

格式校验

handleblurtel(){      let phoneCodeVerification = /^[1][3,4,5,7,8][0-9]{9}$/;     if(this.form.tel===''){       this.errorTxt="请输入手机号码" // 不同情况下错误提示     }else if(!phoneCodeVerification.test(this.form.tel)){       this.errorTxt="请输入正确的手机号码格式"     }else{       this.errorTxt='' //有效情况记得清空错误提示       return true     }   }, // 验证码必填和格式验证   handleblurcode(){     if(this.form.code===''){       this.errorTxtcode="请输入验证码"     }else if(this.form.code.length>0&&this.form.code.length<6){       this.errorTxtcode="请输入正确的验证码格式"     }else{       this.errorTxt=''       return true     }   }

长度控制

 // 限制输入的字符串长度    hanldeInputTel(){//手机号长度保证11位      if(this.form.tel.length>11){        this.form.tel=this.form.tel.slice(0,11)      }    },    handleInputCode(){//验证码保证6位      if(this.form.code.length>6){        this.form.code=this.form.code.slice(0,6)      }    },

二、验证码逻辑:

贴下html代码:

 <van-field    v-model="form.code"     center    clearable    label="短信验证码"    :error-message="errorTxtcode"    placeholder="请输入短信验证码"    @input="handleInputCode"    @blur="handleblurcode"      >    <template #button>      <button size="small" :disabled="btnStatus" :class="btnStyle" type="primary" @click="clickCode">        <van-count-down :time="time" format="ss" v-if="countFlag===1" @finish="finishDown"></van-count-down>        <span>{{countTxt}}</span>      </button>    </template>  </van-field>

vue如何实现登陆页面

vant-count-down是vant组件自带的计数器用法,直接引入,time是初始化时间数,比如60s,1min,format是时间格式:时分秒,秒等。
@finish是自带的方法,具体api可去官方网站看,这里不做介绍。

初始化按钮状态:

data(){    return {      form:{        tel:'',        code:''      },      errorTxt:'',// 手机号错误提示      errorTxtcode:'',// 验证码错误提示      btnStatus:true,// 按钮不可点击       btnStyle: 'nomalStyle',// 促初始化按钮样式       time:60*1000,// 时间数       countTxt:'发送验证码',// 初始化按钮文案       countFlag:0//0:展示文案,1;展示计数,开始计时    }    },

开始计时:
按钮状态不可点击状态btnStatus,按钮样式:btnStyle,开始计数:countFlag

// 点击按钮开始计时    clickCode(){      this.btnStatus=true      this.btnStyle=`countdown`      this.countFlag=1//开始计时      this.countTxt=''//文案为空    },

倒计时结束后:需要修改这些参数
按钮可继续点击btnStatus,显示文案countFlag,c文案内容countTxt

//  倒计时结束    finishDown(){       this.btnStyle=`canClick`       this.btnStatus=false       this.countTxt='重新获取'       this.countFlag=0    },

按钮状态何时触发:
手机号符合格式情况下,watch里面监听手机号

 watch:{   form: {      handler() {        if(/^[1][3,4,5,7,8][0-9]{9}$/.test(this.form.tel)){         this.btnStyle = 'canClick'          this.btnStatus=false        }else{         this.btnStatus=true        }      },      immediate: true,      deep: true    }  },

vue如何实现登陆页面

最后点击提交的简单写法:

// 提交用户信息    sumbit(){      let telStatus=this.handleblurtel()      let codeStatus=this.handleblurcode()      if(telStatus&&codeStatus){        this.axios.get({}).then(res=>{          console.log('提交成功')          // 把后端会的token存入前端缓存          localStorage.setItem('token',res.data.toekn)          // 跳转到首页          this.$router.push({path:'/'})        })      }    },

1,2,3步可以一步一步来,这样思路就会清晰,不然会觉得验证码一会儿这样显示一会儿那样显示,就会很混乱,所以先把单个功能开发完,最后写按钮变化前提条件 这样思路就很明确。

样式放在文末:

.nomalStyle {    background: #EAEEFD;    color: #5E6679;  }  button {      width: 161px;      height: 61px;      border-radius: 31px;      line-height: 61px;      font-size: 24px;      text-align: center;    }    .canClick {    background-color: #3E64D4;    color: #FFFFFF;  }   .countdown {    background: #EAEEFD;    color: #3E64D4  }

到此,关于“vue如何实现登陆页面”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

vue如何实现登陆页面

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

vue如何实现登陆页面

这篇文章主要介绍“vue如何实现登陆页面”,在日常操作中,相信很多人在vue如何实现登陆页面问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue如何实现登陆页面”的疑惑有所帮助!接下来,请跟着小编一起来学习吧
2023-06-30

怎么使用vue cli实现项目登陆页面

这篇文章主要介绍“怎么使用vue cli实现项目登陆页面”,在日常操作中,相信很多人在怎么使用vue cli实现项目登陆页面问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用vue cli实现项目登陆页面
2023-07-04

vue加php如何实现登陆

这篇文章主要讲解了“vue加php如何实现登陆”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“vue加php如何实现登陆”吧!vue加php实现登录的方法:1、创建登录部分的代码文件;2、创建
2023-06-22

jquery实现登陆跳转页面跳转页面跳转

在Web开发中,很常见的一种需求是用户通过输入账号和密码完成登陆操作后,跳转到不同的页面。这一过程中需要用到Javascript库中非常流行的jQuery来实现。jQuery是一个快速、简洁的JavaScript库,其设计思想是“写更少,做更多”。它封装了JavaScript常用的操作,让开发者可以更方便、快捷地完成网页开发。在本文中,我们将介绍如何使用jQuery实现用户登陆
2023-05-25

Laravel怎么实现登陆过期后跳转到登陆页面

这篇文章主要讲解了“Laravel怎么实现登陆过期后跳转到登陆页面”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Laravel怎么实现登陆过期后跳转到登陆页面”吧!一、应用场景:用户登陆后存
2023-07-04

Java如何实现简单登陆界面

这篇文章主要介绍了Java如何实现简单登陆界面的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java如何实现简单登陆界面文章都会有所收获,下面我们一起来看看吧。1、首先需要建立一个类,在这里,我命名为newLo
2023-06-30

如何利用vue实现登陆界面及其跳转详解

在开发中我们经常遇到这样的需求,需要用户直接点击一个链接进入到一个页面,下面这篇文章主要给大家介绍了关于如何利用vue实现登陆界面及其跳转的相关资料,需要的朋友可以参考下
2023-05-15

vuecli实现项目登陆页面流程详解

CLI是一个全局安装的npm包,提供了终端里的vue命令。它可以通过vuecreate快速搭建一个新项目,或者直接通过vueserve构建新想法的原型。你也可以通过vueui通过一套图形化界面管理你的所有项目
2022-11-13

layui如何实现登陆界面验证码

这篇文章主要介绍“layui如何实现登陆界面验证码”,在日常操作中,相信很多人在layui如何实现登陆界面验证码问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”layui如何实现登陆界面验证码”的疑惑有所帮助!
2023-06-21

vue如何实现登录界面

本文小编为大家详细介绍“vue如何实现登录界面”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue如何实现登录界面”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。效果如下图所示:HTML部分:
2023-07-02

Vue怎么实现用户访问没有登陆时自动跳转登录页面

这篇文章主要介绍了Vue怎么实现用户访问没有登陆时自动跳转登录页面的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue怎么实现用户访问没有登陆时自动跳转登录页面文章都会有所收获,下面我们一起来看看吧。设计思路定
2023-07-05

Vue实现用户没有登陆时,访问后自动跳转登录页面的实现思路

这篇文章主要介绍了Vue实现用户没有登陆时,访问后自动跳转登录页面,定义路由的时候配置属性,这里使用needLogin标记访问页面是否需要登录,本文通过实例代码介绍的非常详细,需要的朋友可以参考下
2023-02-23

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录