如何优雅的进行表单校验
工作中,我们经常会遇到表单信息提交时,需要校验表单格式,拦截无效请求,此时不可避免的就是用大量的if return
去拦截。还要重复写大量的errorMessage
,如下场景:
// 下面是业务场景的字段及格式要求
userName:必填,
phone: 必填,正则验证,已设置max = 11
address:至少两位,已设置max = 150
一般的代码逻辑校验会这么写:
// formData
const {
userName,
phone,
address = ''
} = formData;
if (!userName) {
showErrorMsg('userName is required');
return;
}
if (!phone) {
showErrorMsg('phone is required');
return;
}
const reg = /^1[3456789]\d{9}$/;