赞
踩
rules:校验规则设置(required是否必填,max最大长度,min最小长度,message提示信息,parttern正则匹配,validator验证器)
validateTrigger:触发校验(一般为change,blur等)
initialValue:设置初始值
- //内置验证规则
- <a-form-item label="课程名称" v-bind="formItemLayout">
- <a-input
- placeholder="课程名称"
- v-decorator="['name', {
- rules: [{ required: true, max: 50, message: '必填项,最大50字符' }] }
- initialValue:"数学"
- ]" />
- </a-form-item>
-
- //自定义验证规则01
- <a-form-item>
- <a-input
- size="large"
- type="text"
- placeholder="手机号"
- v-decorator="['mobileNumber', {
- rules:[{required: true, pattern: /^1[34578]\d{9}$/, message: '请输入正确的手机号'}],
- validateTrigger: 'change'
- }]">
- </a-input>
- </a-form-item>
-
- //自定义验证规则02
- <a-form-item v-bind="formItemLayout" label="手机号码">
- <a-input
- placeholder="手机号码"
- v-decorator="['mobileNumber',{
- rules:[{required:true,max:11,message:'请输入正确格式的手机号码',validator: MobileNumberValidator}]}]" />
- </a-form-item>
- //在methods中设定方法
- // 手机号验证
- MobileNumberValidator (rule, value, callback) {
- const idcardReg = /^1(3|4|5|6|7|8|9)\d{9}$/
- if (!idcardReg.test(value)) {
- // eslint-disable-next-line standard/no-callback-literal
- callback('非法格式')
- }
- // Note: 必须总是返回一个 callback,否则 validateFieldsAndScroll 无法响应
- callback()
- }
通常情况下,通过this.form.getFieldValue("xxx"),只能获取一个数组包含value值,形如["A","B"],而通过labelInValue属性可以得到[{key: "Aid",label: "Aname"},{{key: "Bid",label: "Bname"}}]
- <a-form-item label="ABC" v-bind="formItemLayout">
- <a-select
- labelInValue
- placeholder="请选择"
- v-decorator="['courseTeacherList', {
- rules: [{ required: true, message: '必填项,请选择' }] }]"
- >
- <a-select-option v-for="item in List"
- :key="item.id"
- :value="item.id">{{ item.name }}</a-select-option>
- </a-select>
- </a-form-item>
- //获取一个输入控件的值
- this.form.getFieldValue("xxx");
-
- //获取一组输入控件的值,如不传入参数,则获取全部组件的值
- this.form.getFieldsValue(["xxx","yyy"]);
- this.form.getFieldsValue();
-
- //设置一组输入控件的值
- this.form.setFieldsValue({
- xxx:res.result["xxx"],
- yyy:res.result["yyy"],
- })
-
- //设置一组输入控件的值 加了labelInValue属性
- this.form.setFieldsValue({
- userName:{
- label:res.result["userName"],
- key:res.result["userNameId"]
- }
- })
-
- //关闭表单清空表单数据
- this.form.resetFields();
-
- //提交表单获取数据
- //通过this.form.validateFields函数进行表单验证以及数据获取
- handleSubmit () {
- this.form.validateFields((err, values) => {
- if (!err) {
- this.$message.error('保存成功')
- }
- })
- },
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。