vue实现登陆注册,vue用户登录注册案例

  vue实现登陆注册,vue用户登录注册案例

  第一次用Vue MySQL实现注册登录功能,就已经踩了很多坑,下面这篇文章主要给大家介绍了关于使用Vue MySQL实现登录注册案例的相关资料,需要的朋友可以参考下

  

目录

   1.新建某视频剪辑软件项目并连接数据库2.新建登录页面、注册页面和首页3.页面路由配置4.新建/server/API/login.js5 .在/server/router.js中配置对应路由6.在/views/login.vue 、/views/register.vue和/views/home.vue中编写相应方法总结

  

1.新建vue项目并连接数据库

  具体步骤见某视频剪辑软件连接关系型数据库数据库

  

2.新建登录页面、注册页面和首页

  在src/视图文件夹下,新建login.vue(登录页面)、register.vue(注册页面)和home.vue(首页)

  根据自己的喜好搭建页面(本人此处使用了elementUI的组件,简历前要先安装elementUI中间件)

  国家预防机制一元素-ui -S

  模板

  div class=bg

  div id=登录

  氘登录页面/h2

  El-form ref= form :model= form label-width= 20%

  El-表单-项目标签=用户名:

  埃尔输入v-model=form.username/el输入

  /El-表单-项目

  El-表单-项目标签=密码:

  埃尔-输入v-model=形式。“密码”type=“密码”/El-input

  /El-表单-项目

  /el格式

  El-button type= primary round @ click= log in class= BTN 登录/el-button

  a @click=register class=reg 前往注册/a

  /div

  /div

  /模板

  模板

  div class=bg

  div id=register

  氘注册页面/h2

  El-form ref= form :model= form label-width= 20%

  El-表单-项目标签=用户名:

  埃尔输入v-model=form.username/el输入

  /El-表单-项目

  El-表单-项目标签=密码:

  埃尔-输入v-model=形式。“密码”type=“密码”/El-input

  /El-表单-项目

  /el格式

  El-button type= primary round @ click= register class= BTN 注册/el-button

  /div

  /div

  /模板

  模板

  div id=main

  埃尔容器

  埃尔-标题

  div class=logo

  img src=./assets/img/logo.png !-此处请提前准备好图片-

  /div

  div class=用户

  { {用户名}}

  /div

  /el-header

  埃尔梅因/埃尔梅因

  电子页脚/电子页脚

  /El-容器

  /div

  /模板

  页面效果

  

3.页面路由配置

  在src/路由器/索引. js中配置页面对应路由

  从“vue”导入某视频剪辑软件

  从“vue路由器"导入某视频剪辑软件路由器

  Vue.use(VueRouter)

  const home=()=import(./views/home.vue) //懒加载

  const login=()=import(./查看/登录。vue’)

  常量寄存器=()=导入(./查看/注册。vue’)

  常量路由=[

  {

  路径: ,

  重定向:"/登录"//重定向

  },

  {

  路径:"/登录",

  名称:登录,

  组件:登录

  },

  {

  路径:"/注册",

  姓名:注册,

  组件:寄存器

  },

  {

  路径:"/home ",

  姓名:家,

  成分:家,

  }

  ]

  const router=new VueRouter({

  模式:"历史",

  base: process.env.BASE_URL,

  路线

  })

  //解决相同路径跳转报错问题

  //使用推的方法

  常量路由器推送=vue路由器。原型。推

  VueRouter.prototype.push=函数推(到){

  返回RouterPush.call(this,to).接住(错误=错误)

  }

  //使用替换的方法

  const路由器replace=vue路由器。原型。替换

  VueRouter.prototype.replace=函数替换(到){

  返回RouterReplace.call(this,to).接住(错误=错误)

  }

  导出默认路由器

  

4.新建/server/API/login.js

  接收请求查询/请求博西传递来的参数,通过查询语句查询对应数据并放回结果

  让db=require(./db/index’)

  exports.login=(req,res)={

  var SQL= select * from user where name=?和密码=?

  db.query(sql,[req.query.name,req.query.password],(err,data)={

  如果(错误){

  return res.send({

  现状:400,

  消息: 登录失败

  })

  }

  if(data.length 0) {

  资源发送({

  状态:200,

  消息: 登录成功

  })

  }否则{

  资源发送({

  现状:202,

  消息: 用户名或密码错误

  })

  }

  })

  }

  exports.register=(req,res)={

  const SQL 1= select * from user where name=?

  const sql2=插入到用户(名称,密码)值(?)

  db.query(sql1,[req.body.params.name],(err,data)={

  如果(错误){

  return res.send({

  现状:400,

  消息: 操作失败

  })

  }

  if(data.length 0) {

  return res.send({

  现状:202,

  消息: 用户名已存在

  })

  }否则{

  db.query(sql2,[req.body.params.name,req.body.params.password],(err,data)={

  如果(错误){

  return res.send({

  现状:400,

  消息: 注册失败

  })

  }

  资源发送({

  状态:200,

  消息: 注册成功

  })

  })

  }

  })

  }

  

5.在/server/router.js中配置对应路由

  let express=require(express )

  让路由器=快递.路由器()

  let login=require( ./API/登录’)

  router.get(/login ,login.login)

  router.post(/register ,login.register)

  模块。导出=路由器

  

6.在/views/login.vue、/views/register.vue和/views/home.vue中编写相应方法

  模板

  div class=bg

  div id=登录

  氘登录页面/h2

  El-form ref= form :model= form label-width= 20%

  El-表单-项目标签=用户名:

  埃尔输入v-model=form.username/el输入

  /El-表单-项目

  El-表单-项目标签=密码:

  埃尔-输入v-model=形式。“密码”type=“密码”/El-input

  /El-表单-项目

  /el格式

  El-button type= primary round @ click= log in class= BTN 登录/el-button

  /div

  /div

  /模板

  脚本

  从" axios "导入爱可信

  导出默认值{

  data () {

  返回{

  表单:{

  用户名: ,

  密码:""

  }

  };

  },

  方法:{

  登录(){

  if(this.form.username==) {

  这个message.error(用户名不能为空);

  } else if(这个。形式。密码== ){

  这个message.error(密码不能为空);

  }否则{

  axios。get( http://127。0 .0 .1/登录,{

  参数:{

  名称:this.form .用户名,

  密码:this.form.password

  }

  }).然后(res={

  if(res.data.status==200) {

  这个. router.push({

  路径:"/home ",

  查询:{

  名称:this.form .用户名

  }

  })

  }否则{

  这个$alert(用户名或密码错误, 登录失败, {

   confirmButtonText:确定,

  回调:操作={

  this.form.username=" ",

  this.form.password=

  }

  });

  }

  }).接住(错误={

  console.log(登录失败err);

  })

  }

  },

  注册(){

  这个. router.push(/register )

  }

  }

  }

  /脚本

  模板

  div class=bg

  div id=register

  氘注册页面/h2

  El-form ref= form :model= form label-width= 20%

  El-表单-项目标签=用户名:

  埃尔输入v-model=form.username/el输入

  /El-表单-项目

  El-表单-项目标签=密码:

  埃尔-输入v-model=形式。“密码”type=“密码”/El-input

  /El-表单-项目

  /el格式

  El-button type= primary round @ click= register class= BTN 注册/el-button

  /div

  /div

  /模板

  脚本

  从" axios "导入爱可信

  导出默认值{

  data () {

  返回{

  表单:{

  用户名: ,

  密码:""

  },

  isnull: false

  };

  },

  方法:{

  注册(){

  if(this.form.username==) {

  这个message.error(用户名不能为空);

  } else if(这个。形式。密码== ){

  这个message.error(密码不能为空);

  }否则{

  axios。帖子( http://127。0 .0 .1/注册,{

  参数:{

  名称:this.form .用户名,

  密码:this.form.password

  }

  }).然后(res={

  //console . log(RES . data . message);

  if(res.data.status==200) {

  这个。$alert(返回登录页面,注册成功,{

  ConfirmButtonText:确定,

  回调:操作={

  这个。$router.push(/login )

  }

  })

  }else if(res.data.status==202) {

  这个。$alert(用户名已经存在,注册失败,{

  ConfirmButtonText:确定,

  回调:操作={

  this.form.username=“”,

  this.form.password=

  }

  })

  }否则{

  console . log(RES . message);

  }

  }).catch(错误={

  Console.log(操作失败错误);

  })

  }

  }

  }

  }

  /脚本

  模板

  div id=main

  el容器

  El-标题

  div class=logo

  img src=./assets/img/logo.png !-这里,请提前准备好图片-

  /div

  div class=用户

  { {用户名}}

  /div

  /el-header

  埃尔梅因/埃尔梅因

  电子页脚/电子页脚

  /El-容器

  /div

  /模板

  脚本

  导出默认值{

  名称:主,

  data() {

  返回{

  用户名:“”

  }

  },

  Created() {//页面创建时,将路由传递的用户名赋给data中的用户名,这样用户名就可以显示在页面上了(效果见首页右上角)

  this .用户名=this。$ route . query . name;

  }

  }

  /脚本

  效果显示

  注册演示

  Git源地址:https://gitee.com/xie-xiaochun/login-registration-demo

  注意:资源不包含数据库,需要自己创建数据库,在源代码中修改数据库的相关信息。

  

总结

  关于用Vue MySQL登录注册的这篇文章到此为止。关于注册Vue MySQL的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望你以后能支持我们!

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

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