封装校验规则(以及复选框和整体校验)-----Vue3+ts项目

登录校验页面

<script setup lang="ts">
import { ref } from 'vue'
import { mobileRules, passwordRules } from '@/utils/rules'
const mobile = ref('')
const password = ref('')
</script>
<!-- 表单 --><van-form autocomplete="off"><van-fieldv-model="mobile":rules="mobileRules"placeholder="请输入手机号"type="tel"></van-field><van-fieldv-model="password":rules="passwordRules"placeholder="请输入密码"type="password"></van-field>

封装校验页面utils/rules.ts
提取表单校验规则(为了其他页面复用)
加上 FieldRule ,可以有提示,提高效率

import type { FieldRule } from 'vant'
const mobileRules = [{ required: true, message: '请输入手机号' },{ pattern: /^1[3-9]\d{9}$/, message: '手机号不正确' }
]
const passwordRules: FieldRule[] = [{ required: true, message: '请输入密码' },{ pattern: /^\w{8,24}$/, message: '密码必须是8-24个字符' }
]
export { mobileRules, passwordRules }

在这里插入图片描述
效果图:
在这里插入图片描述
表单整体校验
加上native-type=“submit”,只有是submit时才能触发校验,这样点击登录就可以实现整体校验
" native-type" 是按钮的原始类型,通常用于表示某种原生的类型。

 <div class="cp-cell"><van-button native-type="submit" block round type="primary">登 录</van-button></div>

复选框校验

//默认为false不勾选
const agree = ref(false)
const onSubmit = () => {
//如果agree.value不存在,也就是值为false,则提示勾选if (!agree.value) {return showToast('请勾选协议')}console.log(111)
}

submit提交表单且验证通过后触发

  <van-form autocomplete="off" @submit="onSubmit"><div class="cp-cell"><van-checkbox v-model="agree"><span>我已同意</span><a href="javascript:;">用户协议</a><span></span><a href="javascript:;">隐私条款</a></van-checkbox></div></van-form>

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

itbuilder:在线表结构设计和ER图制作工具,助您高效开发!

在现代软件开发中&#xff0c;设计表结构和制作ER图是不可或缺的环节。为了帮助开发者更加轻松地完成这一任务&#xff0c;我们向大家推荐一款强大的在线表结构设计软件&#xff1a;itbuilder。itbuilder拥有一系列独特的优势&#xff0c;让您的开发工作变得更加高效和便捷。 一…

反钓鱼防盗号,共筑校园安全防线!Coremail出席CERNET学术年会

11月27日-30日&#xff0c;中国教育和科研计算机网CERNET第二十八/二十九届学术年会在福州隆重举办&#xff0c;Coremail受邀出席&#xff0c;就高校数字化及网络安全等相关话题与高校老师、行业专家进行广泛交流。 △11月27-30日&#xff0c;Coremail在会场设展&#xff0c;为…

【redis笔记】redis应用

redis应用 redis 发布订阅 redis客户端可以订阅任意数量的频道 订阅方式 subscribe channel1 – 订阅了channel1频道 发布方式 订阅了之后&#xff0c;可以在任意客户端发布消息到指定channel publish channel1 hello – 往channel发布hello&#xff0c;会返回订阅channe…

每日一练2023.12.7—— 情人节【PTA】

题目链接&#xff1a;L1-035 情人节 题目要求&#xff1a; 以上是朋友圈中一奇葩贴&#xff1a;“2月14情人节了&#xff0c;我决定造福大家。第2个赞和第14个赞的&#xff0c;我介绍你俩认识…………咱三吃饭…你俩请…”。现给出此贴下点赞的朋友名单&#xff0c;请你找出…

自定义starter案例——统计独立IP访问次数

自定义starter案例——统计独立IP访问次数 文章目录 自定义starter案例——统计独立IP访问次数ip计数业务功能开发定时任务报表开发使用属性配置功能设置功能参数配置调整 自定义拦截器开启yml提示功能 ip计数业务功能开发 public class IpCountService {private Map<String…

720度vr虚拟家居展厅提升客户的参观兴致

VR虚拟展厅线上3D交互展示的优势有以下几点&#xff1a; 打破了场馆的展示限制&#xff0c;可展示危险性制品、珍贵稀有物品、超大型设备等&#xff0c;同时提供了更大的展示空间和更丰富的展示内容。 可提供企业真实环境的实时VR全景参观&#xff0c;提升潜在客户信任度。 提供…

AMD 发布新芯片MI300,支持训练和运行大型语言模型

AMD 宣布推出 MI300 芯片&#xff0c;其 Ryzen 8040移动处理器将于2024年用于笔记本电脑。 AMD官方网站&#xff1a;AMD ׀ together we advance_AI AMD——美国半导体公司专门为计算机、通信和消费电子行业设计和制造各种创新的微处理器&#xff08;CPU、GPU、主板芯片组、电…

泳道图绘制全攻略,一图胜千言,快速上手

泳道图是一种流程图的形式&#xff0c;通过在不同的泳道中展示不同的参与者&#xff0c;帮助我们更好地理解和分析流程。它是一种非常有用的工具&#xff0c;可以帮助我们在团队协作、流程管理和问题解决等方面取得更好的效果。 1. 泳道图的定义 泳道图是一种以泳道为基础的流程…

刷机操作小记

步骤&#xff1a; 一.刷机 1.先找到刷机包中的刷机命令&#xff0c;然后用sudo的权限对其执行。 2.之后 先短接&#xff0c;再插USB 短接具体图片如下&#xff08;焊口和大板子&#xff09; 此时等待刷机程序执行完毕就可以完成刷机了。 &#xff08;./fh.sh&#xff09; …

指针(四)

因为前期在学驱动&#xff0c;所以花了一天时间借鉴了别的资料&#xff0c;把本科学的C语言捡起来。 指针的基本概念 堆栈有栈顶指针&#xff0c;队列有头指针和尾指针&#xff0c;这些概念中的"指针"本质上是一个整数&#xff0c;是数组的索引&#xff0c;通过指针…

微信小程序收款手续费多少,怎么降低?

在竞争激烈、各行各业都如此内卷的当下&#xff0c;商家需要不断寻求提高利润的方法。所谓开源节流&#xff0c;既要学会提高利润率&#xff0c;也要学会节省成本&#xff0c;毕竟钱是挣出来的&#xff0c;同时也是省出来的。作为一个经常使用收款工具的商家&#xff0c;很多人…

命令查询pg 数据库版本,并且分析结果行各代表什么意思

目录 1 问题2 实现 1 问题 命令查询pg 数据库版本&#xff0c;并且分析结果行各代表什么意思 2 实现 SELECT version(); PostgreSQL 11.7 (Debian 11.7-2.pgdg1001) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit这是一条关于 PostgreSQL 数据库…