vue实现用户登录,vue实现简单的登录页面

  vue实现用户登录,vue实现简单的登录页面

  本文主要介绍vue登录和注销的实现实例。边肖认为这很好。现在分享给大家,给大家一个参考。来和边肖一起看看吧。

  

目录

  登录业务流程登录功能实现摘要首先先了解一下,我们的效果实现流程

  首先登录概述和业务流程及相关技术点。

  录制页面的布局

  创建两个Vue.js文件

  让我们做登录页面和注册页面。

  登录页面的布局

  配置路由

  登录表单的数据绑定

  登录表单的验证规则

  登录表单的重置

  登录预验证

  登录组件配置弹出提示

  成功登录后的行为

  登录到客户端的会话存储后保存令牌。

  通过程序化导航跳转到后台首页,路由地址为默认路径/

  在注销我们的主页时,组件配置弹出提示,并使用removeItem删除我们的令牌。

  

登录业务流程

  1.在登录页面上输入用户名和密码。

  2.调用后台接口进行验证。

  3.验证通过后,根据后台响应状态跳转到项目首页

  

登录功能实现

  1.首先,我们使用路由守卫来验证登录,并确定是否有必要登录。

  {

  路径:“/login”,

  名称:登录,

  组件:登录,

  元:{

  登录:真

  }

  }

  //在需要登录的地方定义meta-true,看他是否需要登录。

  如果(到。matched . some(item=item . meta . log in)){//需要登录

  Console.log(“需要登录”);

  If(isLogin){//1。已经登录,直接通过

  if(data . error==400){//后台告诉你登录不成功。

  下一步({name:登录 })

  local storage . remove item( token );

  返回;

  }

  if(to.name===login){

  下一个({name:Home})

  }否则{

  下一个()

  }

  返回;

  }

  如果(!IsLogin to.name===login){//2。您尚未登录,但您想转到登录页面。

  下一个()

  }

  如果(!isLogin to.name!==login){//3。我没有登录,去了登录页面。

  下一步({name:登录 })

  }

  }else{//不需要直接登录。

  下一个()

  }

  2.表单的验证规则,我们使用了组件库的元素。

  使用模板中的元素编写我们的样式布局。

  div class=登录部分

  !- :rules=rules -

  el格式

  label-position=top

  label-width= 100px class= demo-rule form

  :rules=rules

  :model=rulesFrom

  状态图标

  ref=ruleFrom

  El-form-item标签=用户名属性=名称

  !-使用v-model获取用户输入的名称-

  el输入类型= text v-model= rules from . name /El输入

  /El-表单-项目

  El-form-item label= password prop= password /El-form-item

  !-使用v-model获取用户输入的密码-

  El-input type= password v-model= rules from . password /El-input

  /El-表单-项目

  El-表单-项目

  !-定义提交事件-

  El-button type= primary @ click= submit from( rule from )提交/el-button

  El按钮复位/el按钮

  /El-表单-项目

  /el格式

  /div

  定义表单的验证规则

  具体从表格上看元素官网。

  在数据中定义

  规则来自:{

  名称:,

  密码:“”

  },

  规则:{

  名称:[

  //验证规则

  {必填:真,消息:请输入用户名,触发器:模糊 },

  {最小值:1,最大值:5,消息:长度为1到5个字符,触发器:模糊 }

  ],

  密码:[

  {必填:真,消息:请输入您的密码,触发器:模糊 },

  {最小值:1,最大值:5,消息:长度为1到5个字符,触发器:模糊 }

  ]

  }

  在方法中定义提交事件。

  //当我们单击提交时,我们可以开始并获取表单中的所有内容。

  submitFrom(formName){

  这个。$ refs[表单名]。验证((有效)={

  如果(有效){

  //如果检查通过,将用户信息和密码发送回后端。

  登录({

  名称:this.rulesFrom.name,

  密码:this.rulesFrom.password,

  }).然后((数据)={

  console.log(数据);

  if(data.code===0){

  localStorage.setItem(token ,data.data.token)

  窗户。位置。href=/;

  }

  if(data.code===1){

  这个message.error(data.mes)

  }

  })

  }否则{

  console.log(错误提交!);

  返回错误的

  }

  })

  }

  这个时候把登出也写一下在每个之前的路由器中给他转换

  const token=本地存储。getitem( token );

  //!代币转换成布尔类型

  const isLogin=!代币

  //进入路由的时候,需要向后端返送令牌,验证是否合法

  const data=await userInfo();

  Store.commit(chageUserInfo ,data.data)

  

总结

  本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: