Element Plus 问题:选择框表单校验没有触发

html 复制代码
<el-form ref="myForm" :model="myFormParams" :rules="myFormRules">
  <el-form-item label="课程" prop="course">
    <el-select v-model.trim="myFormParams.course" filterable clearable placeholder="请选择课程">
      <el-option v-for="item in courseList" :key="item" :label="item" :value="item" />
    </el-select>
  </el-form-item>
</el-form>
js 复制代码
const courseList = ["Vue", "React", "JavaScript", "HTML", "CSS"];

const myForm = ref(null);
const myFormParams = reactive({
  course: "",
});
const myFormRules = reactive({
  course: [{ required: true, message: "请选择课程", trigger: "blur" }],
});
  1. 在前端 Vue3 开发中,使用 Element Plus 组件库时,上述代码中的表单校验没有触发

  2. 即,选择课程后,清空选择框,校验没有触发

  3. 只有主动调用表单的校验方法,才会触发校验,如下

html 复制代码
<el-button type="primary" @click="submitmyForm">提交</el-button>
js 复制代码
const submitmyForm = async () => {
  try {
    await myForm.value.validate();
  } catch (error) {
    console.error(error);
    return;
  }

  ElMessage.success("提交成功");
}
处理策略
  • 选择框可以使用 change 作为触发条件
js 复制代码
const myFormRules = reactive({
  course: [{ required: true, message: "请选择课程", trigger: "change" }],
});
相关推荐
XR1234567886 分钟前
工厂车间无线网络方案对比:AGV漫游哪家强?
开发语言·php
傻啦嘿哟41 分钟前
某短视频平台视频爬虫实战:抓取推荐流视频信息,绕过反爬的3种技巧
开发语言·爬虫·python
烬羽1 小时前
React Router v7 完全指南:一个 Demo 吃透前端路由
javascript·react.js·前端框架
現実君1 小时前
【硬件进阶】AD22上位替换JLEDA教程
开发语言·php
烬羽1 小时前
从"整个页面刷新"到"丝滑切换":手写一个 HashRouter 彻底搞懂前端路由
javascript·前端框架·全栈
mubei-1232 小时前
SpringDAO的用法
java·开发语言·数据库
用户938515635072 小时前
从零理解 React Router v6:每一个 API 都是怎么工作的
前端·javascript·全栈
用户059540174464 小时前
Redis缓存回滚踩坑实录:一个配置失误,让我在凌晨3点丢了3000条数据
前端·css
格林威4 小时前
多相机微秒级对齐:硬件触发 vs PTP(IEEE 1588)方案实战对比
开发语言·人工智能·数码相机·机器学习·计算机视觉·视觉检测·机器视觉
kyriewen4 小时前
别再这样写条件渲染了——你的React组件里藏着这5种定时炸弹
前端·javascript·react.js