验证用户名是否正确

1==》// 引入qs               import qs from 'qs';

2===》收集用户账号后, 发送请求 把参数发给后端(把用户名和密码发给后端 验证是否存在这个账号)

3===》

<template><div><el-form:model="ruleForm"status-icon:rules="rules"ref="ruleForm"label-width="100px"class="demo-ruleForm"><el-form-item label="用户名" prop="user"><el-input v-model.number="ruleForm.user"></el-input></el-form-item><el-form-item label="密码" prop="pass"><el-input type="password" v-model="ruleForm.pass" autocomplete="off"></el-input></el-form-item><el-form-item label="确认密码" prop="checkPass"><el-input type="password" v-model="ruleForm.checkPass" autocomplete="off"></el-input></el-form-item><el-form-item><el-button type="primary" @click="submitForm('ruleForm')">提交</el-button><el-button @click="resetForm('ruleForm')">重置</el-button></el-form-item></el-form></div>
</template>

  

<script>
// 引入qs
import qs from "qs";export default {
data() {
var checkAge = (rule, value, callback) => {
if (!value) {
return callback(new Error("用户名不能为空"));
}//它的意思是 当符合要求的条件的时候,就触发回调函数。这个回调的函数是显示成功的标识
setTimeout(() => {
callback();
}, 500);
};var validatePass = (rule, value, callback) => {
if (value === "") {
callback(new Error("请输入密码"));
} else {
if (this.ruleForm.checkPass !== "") {
this.$refs.ruleForm.validateField("checkPass");
}
callback();
}
};var validatePass2 = (rule, value, callback) => {
if (value === "") {
callback(new Error("请再次输入密码"));
} else if (value !== this.ruleForm.pass) {
callback(new Error("两次输入密码不一致!"));
} else {
callback();
}
};
return {
// 存放用户的数据是 ruleForm 而不是data
ruleForm: {
pass: "",
checkPass: "",
user: ""
},
rules: {
pass: [{ validator: validatePass, trigger: "blur" }],checkPass: [{ validator: validatePass2, trigger: "blur" }],user: [{ validator: checkAge, trigger: "blur" }]
}
};
},methods: {
submitForm(formName) {
this.$refs[formName].validate(valid => {
if (valid) {
alert("submit!");
//获取用户的数据哦
//console.log(this.ruleForm.user, this.ruleForm.pass )//用一个对象 username是存放的名字哦 用的是一个爹对象将他们存起来
let params = {
username: this.ruleForm.user,
password: this.ruleForm.pass
};
console.log(params);
// 发送请求 把参数发给后端(把用户名和密码发给后端 验证是否存在这个账号)
this.axios
.post("http://127.0.0.1:666/login/checklogin", qs.stringify(params))
.then(response => {
// 接收后端返回的数据
let { error_code, reason } = response.data;
// 判断
if (error_code === 0) {
// 弹成功提示
this.$message({
type: "success",
message: reason
});
// 跳转到后端首页
this.$router.push("/");
} else {
// 弹失败提示
this.$message.error(reason);
}
})
.catch(err => {
console.log(err);
});
} else {
// 否则就是false
alert("前端验证失败 不能提交给后端!");
return false;
}
});
},
resetForm(formName) {
this.$refs[formName].resetFields();
}
}
};
</script>

  

  

后端node.js代码const express = require("express");
const router = express.Router();// 引入连接数据库的模块
const connection = require("./connect");// 统一设置响应头 解决跨域问题
router.all("*", (req, res, next) => {// 设置响应头 解决跨域(目前最主流的方式)res.header("Access-Control-Allow-Origin", "*");next();
});/* 验证用户名和密码是否正确的路由
*/
router.post("/checklogin", (req, res) => {// 接收用户名和密码let { username, password } = req.body;// 构造sql(查询用户名和密码是否存在)const sqlStr = `select * from account where username='${username}' and password='${password}'`;// 执行sql语句connection.query(sqlStr, (err, data) => {if (err) throw err;// 判断if (!data.length) {// 如果不存在res.send({ error_code: 1, reason: "请检查用户名或密码!" });} else {res.send({ error_code: 0, reason: "欢迎您!登录成功!" });}});
});module.exports = router;

转载于:https://www.cnblogs.com/IwishIcould/p/10952946.html

vue+elementUI+node实现登录模块--验证用户名是否正确相关推荐

  1. 3、Vue+ElementUI制作用户登录页面

    前面两篇简单了解了一下vue和SPA,现在来用Vue+ElementUI做一个用户登录页面,ElementUI是Element出的一套针对vue的UI库,类似的UI库非常多,ElementUI只是其中 ...

  2. 合同信息管理系统(vue+elementUI+node.js)

    项目网址:www.yujunhao.space 该项目设置权限分配,普通用户只能访问简单内容. 项目前端采用vue+elementUI 后端采用egg框架 https://eggjs.org/zh-c ...

  3. Vue+ElementUI一个简单登录界面

    1.项目搭建 开始工作参考这个博客 创建一一个名为hello-vue 的工程vue init webpack hello-vue 安装依赖,我们需要安装vue-router.element-ui. s ...

  4. ASP.NET入门篇【项目实战】打造一个自己的相册(二)登录模块

    本文原创,转载请说明,本文地址:http://hi.baidu.com/44498/blog/item/59db5da17d24c28146106478.html 进行本次项目实战,需要有一定的C#基 ...

  5. vue 登录模块滑动验证

    vue 登录模块滑动验证 借助阿里云云盾开发 首先登陆账号开通验证码服务 https://yundun.console.aliyun.com/?spm=5176.2020520162.categori ...

  6. Vue项目实战之电商后台管理系统(一) 用户登录模块

    目录 一.项目概述 二.项目初始化 2.1 前端项目初始化步骤 2.2 后台项目的环境安装配置 三.用户登录/登出功能实现 3.1 登录功能概述 3.1.1 登录状态保持 3.1.2 登录逻辑: 3. ...

  7. Vue——Mall项目初始化及登录模块(九)

    一.Mall项目简介 客户使用的业务服务:PC端前台采用传统html开发,(小程序,移动web,移动app)采用uniapp开发 管理员使用的业务服务:PC端后台管理端采用vue脚手架开发 Mall后 ...

  8. vue +Element-UI 实现完整的登录退出功能

    接着上篇文章开始记录,上篇最后问题已经解决,忘记了 : 导致的.已修改完成.截至目前为止,登录退出功能已实现,以下是我的代码: Login.vue <template><div cl ...

  9. 体验使用node.js创建vue+Element-UI项目

    1.首先去node.js官网下载系统对应的node.js版本. 2.安装淘宝镜像 npm install -g cnpm --registry=https://registry.npm.taobao. ...

  10. vue + element-ui 对登录功能、重置表单、退出功能、路由重定向、挂载路由导航守卫的实现

    vue + element-ui 对登录功能.重置表单.退出功能.路由重定向.挂载路由导航守卫的实现 表单验证规则: 重置表单 和 对登录功能的验证: 路由重定向: 挂载路由导航守卫: 退出功能的实现 ...

最新文章

  1. linux shell里面nohup的用法
  2. mysql 慢日志报警_一则MySQL慢日志监控误报的问题分析
  3. java 酒店预定 app_Android应用源码酒店在线预定app项目全套
  4. PXE(preboot execution environment):【网络】预启动执行环节:引导 live光盘 ubuntu livecd 16.4:成功...
  5. 帆软决策报表JS实现点击超链切换TAB页
  6. 是否可以加唯一约束 有空_一篇文章可以学会保温杯的三维设计吗?真可以
  7. VS中Windows界面开发
  8. vue H5 唤醒app
  9. Idea2017破解下载地址
  10. Java项目:图书馆管理系统思路分析
  11. 有 n 个学生站成一排,每个学生有一个能力值,牛牛想从这 n 个学生中按照顺序选取 k 名学生,要求相邻两个学生的位置编号的差不超过 d,使得这 k 个学生的能力值的乘积最大,你能返回最大的乘积吗?
  12. 无法安装网络计算机加密,非系统分区使用BitLocker加密导致软件无法安装的解决方法...
  13. Directx11进阶教程之Tiled Based Deffered Shading
  14. 安吉通Angton居家养老系统升级项目解决方案
  15. 让人春分日 哈工科教115166.弹珠游戏
  16. WebClip完成IOS的Wap封装
  17. 冷漠 有时候并不是无情:QQ日志分享
  18. 程序人生 - 2021浙A区域号牌限行规定(限行时间+限行路段+限行范围图)
  19. 李文卓:揭秘美丽说数据体系建设三部曲
  20. 如何利用无常损失从流动资金池中提取价值

热门文章

  1. Please create pull requests instead of asking for help on Homebrew‘s GitHubError: macOS 10.13
  2. 全网首发:制作LINUX安装软件包,要处理哪些系统目录和文件(2)
  3. LINUX一个正确的mime xml范例
  4. 全网首发:Could NOT find JNI (missing: JAVA_AWT_INCLUDE_PATH) 解决办法
  5. 泰山OFFICE适配龙芯新架构(loongarch64)UOS初步完成
  6. 坚持写博客,果然有人找吾进行技术合作
  7. 编译OpenJDK:invalid configuration Files: machine Files not recognized
  8. HTML的div标记为何设置背景色无效?
  9. 编译好的C一执行就崩溃,第一句输出都没有,是怎么回事?
  10. LINUX编译json-c错误的解决:autoreconf找不到,json_tokener.c报错