向表单添加规则在对应的data()中写入rule{}data(){return{formData:{visitorName:'',cardType:1,cardCode:''},rule:{visitorName:[{required:true,message:'Pleaseenteryourname',trigger:'blur'},{min:2,max:10,message:'长度在2到10个字符之间',trigger:'blur'},{必需:true,模式:/^[\u4e00-\u9fa5_a-zA-Z0-9.·-]+$/,消息:'名称不支持特殊字符',触发器:'blur'}],cardCode:[{required:true,message:'请输入身份证号码',trigger:'blur'},{min:15,max:18,message:'请如实填写18位号码,以供校保部门核实',trigger:'blur'},{required:true,模式:/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/,message:'请输入正确的身份证号码',trigger:'blur'}]}}}自定义校验规则:data(){letreg=/(?!^(\d+|[a-zA-Z]+|[~!@#$%^&*?]+)$)^[\w~!@#$%^&*?]{6,12}$/varvalidateNewPwd=(规则,value,callback)=>{if(!reg.test(value)){callback(newError('密码应为6-12位数字、字母或字符!'))}elseif(this.form.oldPasswd===value){callback(newError('新密码不能和旧密码一致!'))}else{callback()}}varvalidateCommfirmPwd=(rule,value,callback)=>{if(!reg.test(value)){callback(newError('密码应该是6-12位数字,字母或者字符!'))}elseif(this.form.newPasswd!==value){callback(newError('确认密码与新密码不匹配!'))}else{callback()}}return{form:{newPasswd:'',comfirmPwd:''},rules:{newPasswd:[{required:true,message:'请输入新密码',trigger:'blur'},{validator:validateNewPwd,trigger:'blur'}],comfirmPwd:[{required:true,message:'请输入确认密码',trigger:'blur'},{validator:validateComfirmPwd,trigger:'blur'}]}}}addrelus动态添加表单项addPhone(){letlen=this.formData.phoneInfoList.lengththis.$set(this.formData.phoneInfoList,len,{relation:[],phoneNum:'',relationType:0,schoolId:this.selectedUser.schoolId,userCode:this.selectedUser.userCode})},deletePhone(item){如果(this.formData.phoneInfoList.length>1){//表示先获取该元素的下标,然后从该下标开始计算删除长度为1的元素this.formData.phoneInfoList.splice(this.formData.phoneInfoList.indexOf(item),1);}else{this.$vux.toast.text('至少保留一个家庭号!')returnfalse}},