elementPlus form表单(最简洁)

这是基于elementPlus简化后的表单,去除了ts部分,更加通俗易懂,有利于初学者学习

<template>
	<!-- 
		ruleForm的属性和rules的prop需要一一对应
		不然规则找不到name的数据就会一直报message的错误
		
		ruleFormRef  提交表单需要的二次验证
	 -->
	
	<el-form
	:model="ruleForm"
	:rules="rules"
	ref="ruleFormRef"
	>
		<el-form-item label="Activity name" prop="name">
		  <el-input v-model="ruleForm.name" />
		</el-form-item>
		
	    <el-form-item>
	      <el-button @click="submitForm(ruleFormRef)">提交</el-button>
	    </el-form-item>
	</el-form>
</template>

<script setup>
	import { reactive, ref } from 'vue'
	
	const ruleForm = reactive({
	  name: 'Hello',
	})
	
	const rules = reactive({
	  name: [
	    { required: true, message: 'Please input Activity name', trigger: 'blur' },
	    { min: 3, max: 5, message: 'Length should be 3 to 5', trigger: 'blur' },
	  ]
	})
	
	const ruleFormRef = ref()
	
	//formEl 就是 ruleFormRef,如果没有二次验证即使提示了错误也能提交
	const submitForm = async (formEl) => {
	  if (!formEl) return
	  await formEl.validate((valid, fields) => {
	    if (valid) {
	      console.log('submit!')
	    } else {
	      console.log('error submit!', fields)
	    }
	  })
	}
</script>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值