如何通过Vue父组件调用Element-UI子组件进行表单校验?

2026-04-02 23:571阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计479个文字,预计阅读时间需要2分钟。

如何通过Vue父组件调用Element-UI子组件进行表单校验?

方法一:组件代码: 保存javascriptimport childForm from './childForm'export default { data() { return { // ... } }}

方法一:

父组件代码:

如何通过Vue父组件调用Element-UI子组件进行表单校验?

<template> <div> <child-form ref="childRules" :addForm="addForm" > </child-form> <el-button @click="saveForm()" size='medium'>保 存</el-button> </div> </template> <script> import childForm from './childForm' export default { data(){ return { addForm: { name:"", desc: "" }, } }, //组件引用 components: { childForm }, methods:{ //保存校验 saveForm() { let flag = this.$refs['childRules'].validateForm(); if(flag){ console.log(this.addForm); }else{ this.$message.error('保全信息不完整,请继续填写完整'); } }, } } </script> <style></style>

//子组件代码

<!-- --> <template> <div class="form-content"> <el-form :model="addForm" :inline="true" :rules="formRules" ref="ruleForm" size='mini' label-width="120px" class="form-mini"> <el-form-item label="名字" prop='name'> <el-input v-model="addForm.name" ></el-input> </el-form-item> </el-form> </div> </template> <script> export default { name: '', props: { addForm: { type: Object, default: function () { return { } } } }, data() { //这里存放数据 return { formRules: { name: [{ required: true, message: '请输入', trigger: 'blur' }] }, }; }, //监听属性 类似于data概念 computed: {}, //监控data中的数据变化 watch: {}, //过滤器 filters: {}, //方法集合 methods: { //子组件校验,传递到父组件 validateForm () { let flag = null this.$refs['ruleForm'].validate(valid => { if (valid) { flag = true } else { flag = false } }) return flag } } } </script> <style lang='less'> </style>

补充知识:vue element-ui表单验证无效解决方案

在写页面的时候用到的element-ui库中的表单验证

出现如下问题

表单验证效果已有 但验证功能不正确。

检查与对照官网 发现有二点如下所示

第一,在form上需要绑定对象,绑定规则

第二,在form-item上的prop需要与输入框中的绑定对象命名相同。

改完之后,即可对输入内容进行验证

验证内容格式 可参考element-ui官网

以上这篇Vue element-ui父组件控制子组件的表单校验操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。

标签:表单

本文共计479个文字,预计阅读时间需要2分钟。

如何通过Vue父组件调用Element-UI子组件进行表单校验?

方法一:组件代码: 保存javascriptimport childForm from './childForm'export default { data() { return { // ... } }}

方法一:

父组件代码:

如何通过Vue父组件调用Element-UI子组件进行表单校验?

<template> <div> <child-form ref="childRules" :addForm="addForm" > </child-form> <el-button @click="saveForm()" size='medium'>保 存</el-button> </div> </template> <script> import childForm from './childForm' export default { data(){ return { addForm: { name:"", desc: "" }, } }, //组件引用 components: { childForm }, methods:{ //保存校验 saveForm() { let flag = this.$refs['childRules'].validateForm(); if(flag){ console.log(this.addForm); }else{ this.$message.error('保全信息不完整,请继续填写完整'); } }, } } </script> <style></style>

//子组件代码

<!-- --> <template> <div class="form-content"> <el-form :model="addForm" :inline="true" :rules="formRules" ref="ruleForm" size='mini' label-width="120px" class="form-mini"> <el-form-item label="名字" prop='name'> <el-input v-model="addForm.name" ></el-input> </el-form-item> </el-form> </div> </template> <script> export default { name: '', props: { addForm: { type: Object, default: function () { return { } } } }, data() { //这里存放数据 return { formRules: { name: [{ required: true, message: '请输入', trigger: 'blur' }] }, }; }, //监听属性 类似于data概念 computed: {}, //监控data中的数据变化 watch: {}, //过滤器 filters: {}, //方法集合 methods: { //子组件校验,传递到父组件 validateForm () { let flag = null this.$refs['ruleForm'].validate(valid => { if (valid) { flag = true } else { flag = false } }) return flag } } } </script> <style lang='less'> </style>

补充知识:vue element-ui表单验证无效解决方案

在写页面的时候用到的element-ui库中的表单验证

出现如下问题

表单验证效果已有 但验证功能不正确。

检查与对照官网 发现有二点如下所示

第一,在form上需要绑定对象,绑定规则

第二,在form-item上的prop需要与输入框中的绑定对象命名相同。

改完之后,即可对输入内容进行验证

验证内容格式 可参考element-ui官网

以上这篇Vue element-ui父组件控制子组件的表单校验操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。

标签:表单