当前位置: 首页 > article >正文

uniapp form表单校验

带required的就是有校验;name要对应model里的值,要统一

<template>
	<view class="form-view">
		<uni-forms :modelValue="formData" ref="uniForm" :rules="rules">
			<uni-forms-item label="时间:" name="date" required>
				<uni-datetime-picker type="datetime" return-type="timestamp" v-model="formData.date" placeholder="请选择日期"/>
			</uni-forms-item>
			<uni-forms-item label="名称:" name="name" required>
				<uni-easyinput type="text" v-model="formData.name" placeholder="请输入点名称"/>
			</uni-forms-item>
			<uni-forms-item label="行政区:" name="region">
				<uni-easyinput type="text" v-model="formData.region" placeholder="请输入行政区" />
			</uni-forms-item>
			<uni-forms-item label="信息:" name="content">
				<uni-easyinput type="text" v-model="formData.content" placeholder="请输入信息" />
			</uni-forms-item>
		</uni-forms>
		<button style="max-width: 120px;" type="primary" @click="submitForm">提 交</button>
	</view>
</template>

<script>
	export default{
		name:"patrol",
		data(){
			return{
				formData:{
					id:'',
					date:'',
					name:'',
					region:'',
					content:'',
					isAdd:true,// 是否新增
				},
				rules:{
					//对date字段进行必填验证
					date:{
						rules:[
							{required: true,errorMessage: '请选中日期',},
						]
					},
					// 对name字段进行必填验证
					name: {
						rules: [
							{required: true,errorMessage: '请输入点名称',},
							{minLength: 1,maxLength: 5,errorMessage: '名称长度在 {minLength} 到 {maxLength} 个字符',}
						]
					},
				}
			}
		},
		onload(option){// 接收传递过来的值
			
		},
		methods:{
			// 提交按钮
			submitForm(){
				// 调用校验方法
				this.$refs.uniForm.validate().then(res=>{
					console.log('表单数据信息:', res);
					console.log("formData.id",this.formData.id);
					console.log("formData.date",this.formData.date);
					console.log("formData.name",this.formData.name);
				}).catch(err=>{
					console.log('表单数据错误信息:', err);
				})
				
			},
		}
	}
</script>

<style lang="scss" scoped>
.form-view {
  justify-content: center;
  align-items: center;
  flex-direction: column;
  min-height: 100vh;
  margin-left: 20px;
  margin-right: 20px;
}

</style>


http://www.kler.cn/a/394214.html

相关文章:

  • SHA-256哈希函数
  • 3D编辑器教程:如何实现3D模型多材质定制效果?
  • 算法——长度最小的子数组(leetcode209)
  • 鸿蒙HarmonyOS 地图不显示解决方案
  • WEB攻防-通用漏洞SQL注入sqlmapOracleMongodbDB2等
  • 数字后端教程之Innovus report_property和get_property使用方法及应用案例
  • python爬虫获得店铺的所有商品
  • 【JavaEE初阶 — 多线程】生产消费模型 阻塞队列
  • 基于Java的企业资产管理系统
  • Springboot 日志处理(非常详细)
  • 从opencv-python入门opencv--图像处理之图像滤波
  • golang HTTP基础
  • 【计网】实现reactor反应堆模型 --- 多线程方案优化 ,OTOL方案
  • C++算法练习-day39——654.最大二叉树
  • flutter下拉刷新上拉加载的简单实现方式三
  • 实习冲刺第二十一天
  • 手机怎么玩steam游戏?随时随地远程串流玩steam游戏教程
  • 【JavaWeb】JavaWeb入门之XML详解
  • 【MATLAB】目标检测初探
  • eBay接受支付宝付款!卖家如何接住新流量?
  • Node.js版本管理工具nvm使用教程
  • Scala的Array
  • 2.6 以太网扩展技术
  • 实验6记录网络与故障排除
  • 大模型时代,呼叫中心的呼入机器人系统如何建设?
  • 【蓝牙协议栈】【BLE】【IAS】蓝牙立即警报服务