news 2026/4/15 22:18:26

父页面调用子页面的表格校验功能

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
父页面调用子页面的表格校验功能

实现效果(如下图):

问题:想在父页面点击控制子页面的校验,且让组件的报错样式显示,如图样式:

代码:

<el-form :model="form" label-width="auto" :rules="rules" ref="formRef" > <el-form-item label="任务名" prop="name"> <el-input v-model="form.name" placeholder="请输入任务名" /> </el-form-item> <el-form-item label="使用方案" prop="schemeId" > <el-select v-model="form.schemeId" placeholder="请选择" > <el-option v-for="item in selectOptions" :key="item.id" :label="item.name" :value="item.id" /> </el-select> </el-form-item> </el-form>
import { ref, reactive, } from "vue"; const formRef = ref(); const form = ref({ name: "", schemeId: "", }); const rules = reactive({ name: [{ required: true, message: "请输入方案名", trigger: "blur" }], schemeId: [{ required: true, message: "请选择使用方案", trigger: "change" }] });

重点:子组件封装函数

// 暴露表单校验方法给父组件调用 const validateForm = async () => { if (!formRef.value) { return { valid: false, errors: "表单实例不存在" }; } return new Promise((resolve) => { formRef.value.validate((valid, errors) => { resolve({ valid, errors }); }); }); }; defineExpose({ validateForm });

父组件使用:创建事件触发

<template> <sonPanel ref="sonPanelRef"/> </template> const sonPanelRef=ref() // 保存事件 const saveTask = async () => { if (sonPanelRef.value) { //当子组件存在,调用子组件函数 const { valid, errors } = await sonPanelRef.value.validateForm(); if (!valid) return //若校验失败则拦截 } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 11:03:05

SGLang-v0.5.6绘画实战:10分钟生成AI艺术,成本不到一杯奶茶

SGLang-v0.5.6绘画实战&#xff1a;10分钟生成AI艺术&#xff0c;成本不到一杯奶茶 1. 什么是SGLang&#xff1f; SGLang&#xff08;Structured Generation Language&#xff09;是一个专为大语言模型&#xff08;LLM&#xff09;设计的结构化生成语言。简单来说&#xff0c…

作者头像 李华
网站建设 2026/4/16 12:46:25

Python子进程入门:subprocess.Popen详解

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 请创建一个面向初学者的Python教程脚本&#xff0c;讲解subprocess.Popen的基本用法。要求&#xff1a;1) 从最简单的命令执行开始&#xff1b;2) 逐步添加参数如stdout、stderr处…

作者头像 李华
网站建设 2026/4/16 11:05:48

VM17虚拟机配置:AI智能推荐最佳参数方案

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个VM17虚拟机配置推荐系统&#xff0c;根据用户指定的应用场景(如开发测试、数据分析、Web服务等)&#xff0c;自动生成最优的VM17虚拟机配置方案。要求&#xff1a;1.支持常…

作者头像 李华
网站建设 2026/4/16 11:11:03

Z-IMAGE本地部署 vs 云端:效率对比与优化策略

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个性能对比工具&#xff0c;能够测试和比较Z-IMAGE在本地部署和云端环境下的处理速度、资源占用等指标。工具需要&#xff1a;1. 自动化测试脚本&#xff1b;2. 数据可视化展…

作者头像 李华
网站建设 2026/4/15 12:52:44

FOC在无人机电调中的实战应用解析

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 设计一个用于无人机的高性能FOC电调方案。要求&#xff1a;1. 支持4S锂电池输入 2. 最大持续电流40A 3. 转速范围1000-30000RPM 4. 支持BLHeli协议 5. 具有过流、过压、欠压保护 6…

作者头像 李华
网站建设 2026/4/16 12:22:48

3天掌握AI动作捕捉:MediaPipe Holistic速成计划

3天掌握AI动作捕捉&#xff1a;MediaPipe Holistic速成计划 引言&#xff1a;为什么选择MediaPipe Holistic&#xff1f; 如果你正在转岗到AI开发岗位&#xff0c;或者需要快速掌握动作捕捉技术&#xff0c;MediaPipe Holistic可能是你的最佳选择。这个由谷歌开发的开源框架&…

作者头像 李华