vue element-ui 手机号校验 验证码校验 获取验证码倒数60秒无样式实现模板

news2024/11/16 9:49:06

上一篇其实发过了。。。
但是实在真的是太丑了
丑到自己看不下去了
加个对话框好看很多,再发一次

原链接为:https://blog.csdn.net/ZZDT099/article/details/128496693?spm=1001.2014.3001.5502
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

<template>
	<el-dialog title="校验手机号码" :visible.sync="dialogFormVisible" width="520px" :show-close="false"
		:close-on-press-escape="false" :close-on-click-modal="false" center>
		<el-form ref="loginForm" :model="form" :rules="rules" :inline="true">
			<el-form-item label="手机号" prop="phone">
				<el-input type="text" maxlength="11" placeholder="手机号" style="width: 250px" v-model="form.phone" />
			</el-form-item>
			<el-form-item label="验证码" prop="code">
				<el-input type="text" maxlength="6" placeholder="验证码" v-model="form.code" style="width: 250px" />
			</el-form-item>
			<el-form-item>
				<el-button type="primary" :disabled="disabled" @click="getCode">{{ valiBtn }}</el-button>
			</el-form-item>
		</el-form>
		<div slot="footer" class="dialog-footer">
			<el-button type="primary" @click.prevent="onSubmit('loginForm')">登 录</el-button>
		</div>
	</el-dialog>
</template>
<script>
export default {
	data() {
		var checkPhone = (rule, value, callback) => {
			if (value === "") {
				callback(new Error("请输入绑定的手机号码"))
			} else if (!/^(13[0-9]|14[5|7]|15[0|1|2|3|4|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$/.test(value)) {
				callback(new Error("请输入正确的手机号码"))
			} else {
				callback()
			}
		};
		var checkCode = (rule, value, callback) => {
			if (value === "") {
				callback(new Error("请输入验证码"))
			} else if (!/^[0-9]+$/.test(value) || !/^\d{6}$/.test(value)) {
				callback(new Error("请输入6位数字的验证码"))
			} else {
				callback()
			}
		};
		return {
			form: {
				phone: '',
				code: ''
			},
			autoLogin: false,
			rules: {
				phone: [{ validator: checkPhone, required: true, trigger: 'blur' }],
				code: [{ validator: checkCode, required: true, trigger: 'blur' }]
			},
			valiBtn: '获取验证码',
			disabled: false,
			dialogFormVisible: true,
		}
	},
	methods: {
		//获取验证码 并只验证手机号 是否正确
		getCode() {
			this.$refs['loginForm'].validateField('phone', (err) => {
				if (err) {
					console.log('未通过')
					return;
				} else {
					console.log('已通过')
					console.log(this.form.phone)
					this.tackBtn();   //验证码倒数60秒
				}
			})
		},
		tackBtn() {       //验证码倒数60秒
			let time = 60;
			let timer = setInterval(() => {
				if (time == 0) {
					clearInterval(timer);
					this.valiBtn = '获取验证码';
					this.disabled = false;
				} else {
					this.disabled = true;
					this.valiBtn = time + '秒后重试';
					time--;
				}
			}, 1000);
		},
		onSubmit(formName) {  //点击登录 验证手机& 验证码是否符合条件
			this.$refs[formName].validate((valid) => {    // 为表单绑定验证功能
				if (valid) {
					this.$alert("成功", "提示")
					// this.dialogFormVisible = false
				}
			});
		},
	},
}
</script>

需要的自取,涂涂改改就能用!
无后端交互,需要自己添加!
加个对话框看着舒服多了!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/129246.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

算法:反转图像(旋转的矩阵)

前言 今天要介绍的是一个较为经典的算法题&#xff1a;反转图像或者旋转矩阵。这道题的原题是Leetcode上的一道题&#xff0c;在题库序号为48。具体内容粘贴如下&#xff1a; 这种题目就是一个典型的倒置矩阵的思路&#xff0c;大体内容就是将一个矩阵逆向反转90度。首先针对…

Spring Boot学习篇(四)

Spring Boot学习篇(四) 1 BLOB(二进制大类型) 1.1 创建tb_blob表,其sql语句如下所示 CREATE TABLE tb_blob(id number primary key,fname VARCHAR2(50) NOT NULL,f blob )1.2 在entity包下面创建TbBlob实体类 package com.zlz.entity;import lombok.AllArgsConstructor; im…

【嵌入式】NXP/LPC使用GPIO+定时器模拟UART串口接收

目录 一 项目背景 二 原理说明 三 设计实现--GPIO部分 四 设计实现--定时器部分 五 总结 一 项目背景 项目需要使用485串口编码器&#xff0c;编码器的数据以波特率9600持续向外发送。接收端计划使用485转换芯片MCU串口。但是片上的外设资源已经被占用了&#xff0c;没有多…

19.删除链表的倒数第N个结点

给你一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], n 2 输出&#xff1a;[1,2,3,5] 示例 2&#xff1a; 输入&#xff1a;head [1], n 1 输出&#xff1a;[] 示例 3&#…

车辆未冲洗抓拍识别 工地车辆冲洗监测 opencv

车辆未冲洗抓拍识别 工地车辆冲洗监测系统t通过opencvpython可以对进出车辆冲洗情况进行自动识别&#xff0c;发现冲洗不合格自动进行抓拍存档。OpenCV基于C实现&#xff0c;同时提供python, Ruby, Matlab等语言的接口。OpenCV-Python是OpenCV的Python API&#xff0c;结合了Op…

如何对美国服务器响应速度进行优化

决定一个网站加载速度的最大因素之一是服务器的响应时间。服务器响应时间是你的服务器响应用户请求的速度&#xff0c;它可以大大影响你网站的用户体验。本文中&#xff0c;我们将讨论如何确定美国服务器响应时间慢的原因&#xff0c;尤其是如何对美国服务器响应速度进行优化。…

初探Lua脚本

1、什么是Lua Lua脚本是一个由C语言编写的小巧脚本语言&#xff0c;在所有脚本引擎中&#xff0c;Lua的速度是最快的。Lua的核心代码不过一万多行&#xff0c;因为是C语言编写的&#xff0c;因此Lua可以在几乎所有的操作系统和平台进行编译运行 2、Lua适用场景 1&#xff09;…

minio分布式集群部署

minio分布式集群部署 分布式 Minio 可以让你将多块硬盘或者多台服务器组成一个对象存储服务。由于硬盘分布在不同的节点上&#xff0c;分布式 Minio 避免了单点故障。MinioMinio分布式模式可以帮助你搭建一个高可用的对象存储服务&#xff0c;你可以使用这些存储设备&#xff…

七种分布式系统的解决方案,一次性讲给你听!

V-xin&#xff1a;ruyuan0330 获得600页原创精品文章汇总PDF 目录 TB级数据放在一台机器上&#xff1a;难啊&#xff01;到底啥是分布式存储&#xff1f;那啥又是分布式存储系统呢&#xff1f;天哪&#xff01;某台机器宕机了咋办&#xff1f;Master节点如何感知到数据副本消失…

nps内网穿透

nps服务端: linux, 公网ip npc客户端: windows, 内网 文件提取 链接&#xff1a;https://pan.baidu.com/s/1HgujpVoXpLxQ-IgAnI2Izg 提取码&#xff1a;8hyl nps安装 1.上传压缩包到服务器, 解压 2.修改conf文件夹下nps.conf文件 #HTTP(S) proxy port, no startup if em…

vue3 antd项目实战——Form表单使用【v-model数据的双向绑定,form表单嵌套input输入框、Radio单选框】

vue3 ant design vue项目实战——单选框&#xff08;Radio&#xff09;的使用以及Form表单的双向绑定知识调用&#xff08;form表单的源代码附在文章最后&#xff09;场景复现实现需求form表单整体架构的搭建input输入框文本域的嵌套单选组合Radio的嵌套button按钮组合的嵌套fo…

JVM 面试题

✅作者简介&#xff1a;热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏&#xff1a;Java面试题…

C语言:预处理(1)

程序的翻译环境和执行环境 在ANSI C的任何一种实现中&#xff0c;存在两个不同的环境&#xff1a; 第一种是翻译环境&#xff0c;在这个环境中源代码被转换为可执行的机器指令。 第二种是执行环境&#xff0c;它用于实际执行代码。 翻译环境&#xff1a; 组成一个程序的每个…

MySQL 数据库练习题记录01

文章目录前言一、数据库练习题一1.1 表结构1.2 查询所有学生的信息(学号&#xff0c;姓名&#xff0c;性别&#xff0c;班级名称)1.3 查询所有人(包括没有成绩的学生)的课程分数(学号&#xff0c;姓名&#xff0c;性别&#xff0c;班级名称&#xff0c;语文分数&#xff0c;数学…

改进YOLOv5 | 引入密集连接卷积网络DenseNet思想 | 搭建密集连接模块

YOLOv5引入密集连接卷积网络DenseNet思想 CVPR 2017最佳论文 D e n s e N e t DenseNet DenseNet 论文地址:h

SpringBoot快速入门篇

&#x1f49f;&#x1f49f;前言 ​ 友友们大家好&#xff0c;我是你们的小王同学&#x1f617;&#x1f617; 今天给大家打来的是 SpringBoot快速入门篇 希望能给大家带来有用的知识 觉得小王写的不错的话麻烦动动小手 点赞&#x1f44d; 收藏⭐ 评论&#x1f4c4; 小王的主页…

手写 mini 版 Webpack

目录 1. mini 版 Webpack 打包流程 2. 创建 minipack.js 2.1 需要用到的插件库 2.1.1 babylon —— 解析 JavaScript 语法&#xff0c;生产 AST 语法树 2.1.2 babel-traverse —— 对 AST 进行遍历、转换的工具 2.1.3 transformFromAst —— 将 ES6、ES7 等高级的语法&am…

[Verilog]有限状态机设计举例

有限状态机设计举例 摘要&#xff1a;有限状态机&#xff08;FSM&#xff09;是许多数字系统中用来控制系统和数据流路径行为的时序电路。FSM的实例包括控制单元和时序。 本实验介绍了两种类型的FSM&#xff08;Mealy和Moore&#xff09;的概念&#xff0c;以及开发此类状态机的…

Codeforces Round #837 (Div. 2)

A. Hossam and Combinatorics 题目链接&#xff1a;Problem - A - Codeforces 样例输入&#xff1a; 2 5 6 2 3 8 1 6 7 2 8 3 2 10样例输出&#xff1a; 2 4题意&#xff1a;给定一个有n个元素的数组&#xff0c;然后让我们求出有多少对(i,j)满足|a[i]-a[j]|max|a[p]-q[q]…

Hudi学习01 -- Hudi简介及编译安装

文章目录Hudi简介Hudi概述Hudi特性Hudi使用场景Hudi编译安装安装Maven编译hudi修改pom文件修改源码兼容hadoop3解决spark模块依赖的问题hudi编译命令Hudi简介 Hudi概述 Apache Hudi (Hadoop Upserts Delete and Incremental) 是下一代流数据湖平台。Apache Hudi 将核心仓库和…