**
## 第一种方式优化方案(单一校验)
**
export default{
data(){
return{
formData:{
contacts:'',
telPhone:'',
faxEmail:'',
agentNo:'',
}
}
},
methods:{
validateFn(value, msg) {
if (!value) {
alert(msg)
return false
} else {
return true
}
},
saveForm() {
const validate = this.formData
const validateArray = [
this.validateFn(validate.contacts, '请输入姓名!'),
this.validateFn(validate.telPhone, '请输入手机号码!'),
this.validateFn(validate.faxEmail, '请输入电子邮箱!'),
this.validateFn(validate.agentNo, '请输入企业邮箱!'),
]
if (!validateArray.includes(false)) {
this.SubmitFrom()
}
},
SubmitFrom(){
uni.navigateTo({
url:'../arrayifElse/arrayIfElse'
})
},
}
}
**
## 第二种优化方案(可正则校验)
**
export default{
data(){
return{
formData:{
contacts:'',
telPhone:'',
faxEmail:'',
},
rule:[
{label:'联系人姓名',code:'contacts'},
{label:'联系人手机号码',code:'telPhone',type:'phone'},
{label:'联系人邮箱',code:'faxEmail',type:'email'},
]
}
},
methods:{
SubmitFrom(){
let bool = true;
for(let o of this.rule){
if(this.formData[o.code]){
let real ;
if(o.code == 'telPhone' || o.code == 'faxEmail'){
let obj = {}
obj[o.type] = true;
real = this.specialReal(this.formData[o.code],obj);
}
if(real){
if(real.bool) continue;
uni.showToast({
icon:'none',
title:real.text
})
bool = false
break;
}
}else{
bool = false
uni.showToast({
title: `${o.label}不能为空,请前往填写`,
icon: 'none',
});
break;
}
}
if(bool){
console.log('验证通过')
}
},
}
}