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项目之实现登录功能的表单验证!的更多相关文章

  1. Xamarin.Forms登录对话框及表单验证

    微信公众号:Dotnet9,网站:Dotnet9,问题或建议,请网站留言: 如果您觉得Dotnet9对您有帮助,欢迎赞赏. Xamarin.Forms登录系统 内容目录 实现效果 业务场景 编码实现 ...

  2. JaveWeb 公司项目(4)----- Easyui的表单验证

    前面三篇博文讲述的是界面的搭建和数据的传输,可以看出目前我做的这个小项目已经有了一个大体的雏形,剩下的就是细节部分的打磨和一些友好的人机交互设计,今天做的是表单的验证,作为初学者,着实花了一番功夫,所 ...

  3. 介绍Web项目中用到的几款表单验证插件

    第一个插件 jqueryvalidation 官网地址:http://jqueryvalidation.org/ 第二个插件 nice Validator 官网地址: http://niceue.co ...

  4. vue iview modal弹出框 form表单验证

    一.ref="addApply" :model="addApply" :rules="ruleValidate"   不要忘记prop 二. ...

  5. ThinkPhp框架:父类及表单验证

    这个知识点,就可以通过"登录"和"注册"的页面来学习这个知识点了首先先做一个"登录"功能一.登录功能(父类)(1)登录的控制器在我的控制器文 ...

  6. nice-validator表单验证插件的简单使用

    前言 前端表单校验是过滤无效数据.假数据.有毒数据的第一步,是数据安全的第一道关卡,虽然我们不能100%相信客户端提交的数据(真正的校验还得在服务端进行),但设置前端表单校验也是至关重要的,自己写逻辑 ...

  7. nice-validator表单验证插件

    nice-validator表单验证插件的简单使用 前言 前端表单校验是过滤无效数据.假数据.有毒数据的第一步,是数据安全的第一道关卡,虽然我们不能100%相信客户端提交的数据(真正的校验还得在服务端 ...

  8. spring boot + vue 前后分离实现登录功能(一)

    使用webpack 打包初始化项目 vue init webpack book-vue 进入工程目录 cd hello-vue 安装 vue-router npm install vue-router ...

  9. spring boot + vue 前后分离实现登录功能(二)

    安装 axios 进行路由转发 npm install axios --save-dev 或者 cnpm install axios --save-dev 修改 Main.js 新增 var axio ...

随机推荐

  1. 微服务痛点-基于Dubbo + Seata的分布式事务(AT)模式

    前言 Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务.Seata 将为用户提供了 AT.TCC.SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案. ...

  2. Java 细粒度锁续篇

    在上篇文章中大概介绍了 Java 中细粒度锁的几种实现方式,并且针对每种方式都做了优缺点说明,在使用的时候就需要根据业务需求选择更合适的一种.上篇文章中的最后一种弱引用锁的实现方式,我在里面也说了其实 ...

  3. .NET Core 使用MediatR CQRS模式 读写分离

    前言 CQRS(Command Query Responsibility Segregation)命令查询职责分离模式,它主要从我们业务系统中进行分离出我们(Command 增.删.改)和(Query ...

  4. webform中配置服务器控件的样式

    前台 Style <asp:Label ID="Label1" runat="server" Text="Label" Style=& ...

  5. CVE-2017-12149 JBOOS反序列化漏洞复现

    一.漏洞描述 2017年8月30日,厂商Redhat发布了一个JBOSSAS 5.x 的反序列化远程代码执行漏洞通告.该漏洞位于JBoss的HttpInvoker组件中的 ReadOnlyAccess ...

  6. [leetcode]66Plus One

    /** * Given a non-negative integer represented as a non-empty array of digits, plus one to the integ ...

  7. JavaDailyReports10_13

    今天完成了课堂测试二的内容要求,开阔了编程的思路,学到了很多程序设计思想,为以后的学习提供了很多帮助. 明天开始继续完善四则运算的程序,并且开始JavaWeb的学习!

  8. python实例:解决经典扑克牌游戏 -- 四张牌凑24点 (一)

    Hey! Hope you had a great day so far! 今天想和大家讨论的是一道我从这学期cs的期末考试得到灵感的题:Get 24 Poker Game.说到 Get 24 Pok ...

  9. 自动化运维工具-Ansible之4-变量

    自动化运维工具-Ansible之4-变量 目录 自动化运维工具-Ansible之4-变量 变量概述 变量的定义和调用 变量优先级测试 变量优先级测试二 变量注册 facts缓存 变量概述 ​ 变量提供 ...

  10. UML第三次结对作业

    这个作业要求在哪里 https://edu.cnblogs.com/campus/fzzcxy/2018SE1/homework/11274 这个作业的目标 <学会使用专业的建模工具> 队 ...