Vue项目之实现登录功能的表单验证!
Vue项目之实现登录功能的表单验证!
步骤:
配置 Form表单验证;
1、必须给el-from组件绑定model 为表单数据对象
2 给需要验证的表单项 el-form-item 绑定 prop 属性需要指定表单对象中的数据名称
只需要写属性名就可以了! prop="mobile"
3 配置验证规则! 通过el-from 组件的 rules属性配置验证规则


这是我们要验证的之一的表单项
绑定 prop 属性需要指定表单对象中的数据名称
<el-form-item prop="mobile">
<el-input
v-model="user.mobile"
placeholder="请输入你的手机号"
></el-input>
</el-form-item>

配置验证规则! 通过el-from 组件的 rules属性配置验证规则
<el-form class="login-form" ref="form" :model="user" :rules="formRules">

formRules: {
// 表单验证规则配置 required 代表是必填项!
// message 就是他的提示消息!
// trigger 代表触发验证的机制 blur 就是当鼠标失去焦点的时候触发校验!
// min max 也就是长度的限制不能少于和不能大于的字符!
mobile: [
{ required: true, message: '手机号不能为空!', trigger: 'blur' },
{ min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' }
],
}

效果展示:


手动触发表单验证
1、给el-form设置ref 起个名字(随便起名,不要重复即可)
<el-form
class="login-form"
ref="manualVarifaction"
:model="user"
:rules="formRules"
>

2、通过 ref获 el-form 组件,调用组件的 validate 进行验证!
onLogin() {
//获取表单数掘【根据接口要求绑定数据!】
const user = this.user;
//表单验证 this.$refs['']获取ref组件
// validate 是异步请求!
this.$refs["manualVarifaction"].validate((valid, err) => {
// 如果表单验证失败, 停止请求提交!
if (!valid) {
return;
}
console.log(valid);
console.log(err); // 验证失败的字段!
console.log(this.$refs["manualVarifaction"]);
//验证通过,请求登录
this.loginIn();
});
//处理后端响应结果l
// 成功:XXX
// 失败:xXX
},
loginIn() {
request({
method: "POST",
url: "/mp/v1_0/authorizations",
// data用来设置 POST 请求体
data: this.user,
})
.then((res) => {
// 登录成功
console.log(res);
})
.catch((err) => {
// 登录失败
console.log("登录失败", err);
});
}
效果展示

自定义验证规则
<!-- 当然你的规则还是要绑定到prop 属性上面 如下! -->
<el-form-item prop="agree">
<!-- `checked` 为 true 或 false -->
<!-- 要让复选框里的双向绑定到user.agree -->
<el-checkbox v-model="user.agree">
我己阅读并同意用户协议和隐私条款</el-checkbox
>
</el-form-item>

agree: [
{
// 自定义校验规则!
// 验证通过: callback()
// 验证失败!:callback(new Error('错误i的信息!'))
// value 是一个布尔值! 勾选选项value的值就会变成true
validator: (rule, value, callback) => {
console.log(rule, value)
if (value) {
} else {
callback(new Error('错误提示'))
}
},
// message: "请勾选同意用户协议!",
trigger: "change" ,
},
]
效果展示


Vue项目之实现登录功能的表单验证!的更多相关文章
- Xamarin.Forms登录对话框及表单验证
微信公众号:Dotnet9,网站:Dotnet9,问题或建议,请网站留言: 如果您觉得Dotnet9对您有帮助,欢迎赞赏. Xamarin.Forms登录系统 内容目录 实现效果 业务场景 编码实现 ...
- JaveWeb 公司项目(4)----- Easyui的表单验证
前面三篇博文讲述的是界面的搭建和数据的传输,可以看出目前我做的这个小项目已经有了一个大体的雏形,剩下的就是细节部分的打磨和一些友好的人机交互设计,今天做的是表单的验证,作为初学者,着实花了一番功夫,所 ...
- 介绍Web项目中用到的几款表单验证插件
第一个插件 jqueryvalidation 官网地址:http://jqueryvalidation.org/ 第二个插件 nice Validator 官网地址: http://niceue.co ...
- vue iview modal弹出框 form表单验证
一.ref="addApply" :model="addApply" :rules="ruleValidate" 不要忘记prop 二. ...
- ThinkPhp框架:父类及表单验证
这个知识点,就可以通过"登录"和"注册"的页面来学习这个知识点了首先先做一个"登录"功能一.登录功能(父类)(1)登录的控制器在我的控制器文 ...
- nice-validator表单验证插件的简单使用
前言 前端表单校验是过滤无效数据.假数据.有毒数据的第一步,是数据安全的第一道关卡,虽然我们不能100%相信客户端提交的数据(真正的校验还得在服务端进行),但设置前端表单校验也是至关重要的,自己写逻辑 ...
- nice-validator表单验证插件
nice-validator表单验证插件的简单使用 前言 前端表单校验是过滤无效数据.假数据.有毒数据的第一步,是数据安全的第一道关卡,虽然我们不能100%相信客户端提交的数据(真正的校验还得在服务端 ...
- spring boot + vue 前后分离实现登录功能(一)
使用webpack 打包初始化项目 vue init webpack book-vue 进入工程目录 cd hello-vue 安装 vue-router npm install vue-router ...
- spring boot + vue 前后分离实现登录功能(二)
安装 axios 进行路由转发 npm install axios --save-dev 或者 cnpm install axios --save-dev 修改 Main.js 新增 var axio ...
随机推荐
- 基于 WebRTC 的 RTSP 视频实时预览
简介 背景 由于项目需要,需要使用摄像头预览功能,设备型号为海康威视.目前已存在的基于 FFmpeg 的方案延迟都太高,所以项目最终选择基于此方案. 方案 方案选用为基于 WebRTC 的视频即时通讯 ...
- Android面试系列一
什么是ANR,如何避免它 ANR是应用程序无响应(Application Not Responding)的的英文缩写: 当Android 手机在一段时间响应不够灵敏,系统会向用户展示一个对话框 ...
- 安利一个基于Spring Cloud 的面试刷题系统。面试、毕设、项目经验一网打尽
推荐: 接近100K star 的Java学习/面试指南 Github 95k+点赞的Java面试/学习手册.pdf 今天给小伙伴们推荐一个朋友开源的面试刷题系统. 这篇文章我会从系统架构设计层面详解 ...
- h5问题总结
一.下拉刷新上拉加载 主要依赖一款插件mescroll.js http://www.mescroll.com/ 简单好用.以前同事的用法是初始化执行执行上拉会调,页数从0开始,下拉重新加载当前地址走 ...
- [Machine Learning] 多变量线性回归(Linear Regression with Multiple Variable)-特征缩放-正规方程
我们从上一篇博客中知道了关于单变量线性回归的相关问题,例如:什么是回归,什么是代价函数,什么是梯度下降法. 本节我们讲一下多变量线性回归.依然拿房价来举例,现在我们对房价模型增加更多的特征,例如房间数 ...
- 微信小程序-页面下拉
微信小程序当滑动到最顶部和最底部时,继续下拉,会将整个页面拉下去或者拉上去,本来以为是客户端自有的特性,就没去管他,直到我的禅道出现了这个记录... 其实这个问题是可以解决的,只需要在你不想出现在此情 ...
- Scanner详解
java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入 1)public static void main(String[] args) { S ...
- 定期删除文件夹中的文件——C#
下面是自定义的一个函数,参数分别为:文件夹名称.文件后缀.保存天数 逻辑是获取当前系统的时间,和文件创建时间去作差,如果结果大于保存天数,就删除它 /// <summary> /// 定期 ...
- Sql语句模糊查询字符串的两种写法
Sql语句模糊查询有两种写法,一种是在jdbcTemplate的查询方法参数里拼接字符串%,一种是在Sql语句里拼接%字符串. public class IsNameDaoImpl implement ...
- git 合并多次commit
如果当前分支提交了多次commit,无法merge到master上,就需要合并多出的几次commit 第一步 查看log: git log 第二步 git rebase -i HEAD~2 对最近的两 ...