vue3 elementPlus表单里面如何一次性校验多个表单_vue3中elementplus点击提交,同时校验一遍两个表单

这里分享一份由字节前端面试官整理的「2021大厂前端面试手册」,内容囊括Html、CSS、Javascript、Vue、HTTP、浏览器面试题、数据结构与算法。全部整理在下方文档中,共计111道

HTML

  • HTML5有哪些新特性?

  • Doctype作⽤? 严格模式与混杂模式如何区分?它们有何意义?

  • 如何实现浏览器内多个标签页之间的通信?

  • ⾏内元素有哪些?块级元素有哪些? 空(void)元素有那些?⾏内元 素和块级元素有什么区别?

  • 简述⼀下src与href的区别?

  • cookies,sessionStorage,localStorage 的区别?

  • HTML5 的离线储存的使用和原理?

  • 怎样处理 移动端 1px 被 渲染成 2px 问题?

  • iframe 的优缺点?

  • Canvas 和 SVG 图形的区别是什么?

JavaScript

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

  • 问:0.1 + 0.2 === 0.3 嘛?为什么?

  • JS 数据类型

  • 写代码:实现函数能够深度克隆基本类型

  • 事件流

  • 事件是如何实现的?

  • new 一个函数发生了什么

  • 什么是作用域?

  • JS 隐式转换,显示转换

  • 了解 this 嘛,bind,call,apply 具体指什么

  • 手写 bind、apply、call

  • setTimeout(fn, 0)多久才执行,Event Loop

  • 手写题:Promise 原理

  • 说一下原型链和原型链的继承吧

  • 数组能够调用的函数有那些?

  • PWA使用过吗?serviceWorker的使用原理是啥?

  • ES6 之前使用 prototype 实现继承

  • 箭头函数和普通函数有啥区别?箭头函数能当构造函数吗?

  • 事件循环机制 (Event Loop)

业务中有时候会碰见多个表单一起提交的场景,每个表单都有校验,官方文档中没有看到这种解决方法

我们可以用promise.all来处理 多个表单校验
在这里插入图片描述


定义每个表单验证的规则和名称

//基本信息表单验证
const basicFormRef = ref<FormInstance>()
const basicRules = reactive<FormRules>({
  workArea: [{ required: true, message: '请选择社区', trigger: 'change' }],
  workStreet: [{ required: true, message: '请选择街道', trigger: 'change' }],
  reservationTime: [{ required: true, message: '请选择预约时间', trigger: 'change' }]
})
//老人信息表单验证
const oldmanFormRef = ref<FormInstance>()
const oldmanRules = reactive<FormRules>({
  servicePeople: [{ required: true, message: '请选择老人', trigger: 'blur' }]
})
//工单信息表单验证
const workTypeFormRef = ref<FormInstance>()
const workTypeRules = reactive<FormRules>({
  workType: [{ required: true, message: '请选择工单类型', trigger: 'change' }]
})
//派单信息表单验证
const sendFormRef = ref<FormInstance>()
const sendRules = reactive<FormRules>({
  isWork: [{ required: true, message: '请选择是否指派', trigger: 'change' }]
})

第二步

提交按钮 绑定事件

原理就是 在方法里面 定义多个函数来校验单个表单规则,最后通过Promise.all[]来并行 处理返回的结果

<el-button type="primary" @click="affirmSubmit">提交</el-button>

/\*\*
 \* 模块名:校验多个表单
 \* 代码描述:
 \* 作者:Fant
 \* 创建时间:2023/06/10 11:48:40
 \*/
const affirmSubmit = async () => {
  //基本信息校验
  const refBasicForm = async (formEl) => {
    if (!formEl) return
    return await formEl._value.validate((valid: any) => {
      console.log(valid)
    })
  }
  //老人信息校验
  const refOldmanForm = async (formEl) => {


### 刷面试题

刷题的重要性,不用多说。对于应届生或工作年限不长的人来说,刷面试题一方面能够尽可能地快速自己对某个技术点的理解,另一方面在面试时,有一定几率被问到相同或相似题,另外或多或少也能够为自己面试增加一些自信心,可见适当的刷题是很有必要的。

**[开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】](https://bbs.csdn.net/forums/4304bb5a486d4c3ab8389e65ecb71ac0)**

* **前端字节跳动真题解析**  

  ![](https://img-blog.csdnimg.cn/img_convert/8d27500df7b25342f252bca635ca0ab3.png)

* **【269页】前端大厂面试题宝典**  

  ![](https://img-blog.csdnimg.cn/img_convert/eac3322374bd31596de9bf548f6ce47f.png)


最后平时要进行自我分析与评价,做好职业规划,不断摸索,提高自己的编程能力和抽象思维能力。大厂面试远没有我们想的那么困难,摆好心态,做好准备,你也可以的。

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue的el-form validate功能可以方便地用于校验。在,有时需要同时校验两个字段,比如一个填写区域需要同时校验一个选择框和一个输入框的内容。那么如何实现呢? 首先,在el-form我们可以利用rules属性设置校验规则。我们可以为每个字段设置不同的校验规则,然后在提交时触发校验。对于同时校验多个字段的情况,我们需要使用自定义校验方法。 具体实现如下: 1. 在el-form,分别给选择框和输入框设置ref属性(比如分别为"selectRef"和"inputRef")。 2. 在el-form添加自定义校验方法handler,该方法接收两个参数rule和value,其rule示当前校验的规则,value示填写的值。在该方法,我们可以获取选择项和输入框的值,同时进行校验。如果校验成功,返回true,否则返回错误信息。 3. 在选择框添加自定义校验规则(比如required),并设置validator属性为我们定义的handler方法。 4. 在输入框添加相应的校验规则和验证器,设置validator属性为我们定义的handler方法。 5. 在el-form的submit方法,调用el-form的validate方法,触发校验。如果校验失败,弹出错误提示,否则提交。 这样,我们就可以轻松地实现同时校验多个字段的校验了。当然,根据具体的业务需求,我们还可以为不同的字段设置不同的校验规则,并且在校验时进行相应的处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值