vue 的 for 循环体里面的 element UI 表单项添加必填校验

今天遇到一个需要给 for 循环体里面的 form 表单项添加校验的需求,为每一个循环的模块单独添加校验,实现如下:

<el-form 
	:model="form" 
	:rules="rules" 
	ref="form" 
	label-width="120px" 
	class="demo-ruleForm">
  <el-form-item label="名称" prop="name">
    <el-input v-model="form.name" placeholder="填写名称"></el-input>
  </el-form-item>
  <!--循环体-->
  <template v-for="(item,index) in form.list">
  	<el-form-item label="类型" :prop="`list.${index}.type`" :rules='rules.type'>
	    <el-input v-model="item.type" placeholder="填写类型"></el-input>
	</el-form-item>
  	<el-form-item label="版本" :prop="`list.${index}.version`" :rules='rules.version'>
	    <el-select
	    	style="width: 100%;"
          v-model="item.version"
          placeholder="选择版本"
        >
          <el-option
            v-for="(item,index) in versionList"
            :key="index"
            :label="item"
            :value="item"
          ></el-option>
        </el-select>
	  </el-form-item>
  </template>
</el-form>
<style>
export default {
	data(){
		return {
			versionList:[],
			form:{
				name:'',
				list:[
					{
						type:'',
						version:''
					},
					{
						type:'0',
						version:''
					},
					{
						type:'1',
						version:''
					}
				]
			},
			rules:{
			  type: [
	            { required: true, message: '请填写类型', trigger: 'blur' }
	          ],
	          version: [
	            { required: true, message: '请填选择版本', trigger: 'change' }
	          ]
			}
		}
	}
}
</stype>

注意:
1、循环体绑定的 list 必须是 form 里面的对象
2、prop 绑定动态的属性, rules 对动态属性校验
3、prop 绑定的属性名和 rules 绑定的校验名必须保持一致
在这里插入图片描述

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值