第一步,在utils文件夹中新建validata.js
/**
* 校验参数
* @param {data}
* @param {*} str //校验key
* @param {*} message //错误文本信息
* @param {*} rule //正则表达式
**/
export function paramsCheck( data ) {
let arr = data;
for ( let i = 0; i < arr.length; i++) {
let item = arr[i];
if ( item.str == null || item.str == undefined) { item.str = '' };
if ( !new RegExp( item.rule ).test( item.str )) {
return item.message;
};
};
return '';
};
第二步,在main.js中引入
import {paramsCheck} from '@/utils/validata.js';
Vue.prototype.$paramsCheck = paramsCheck;
第三步,页面使用
submit(){
const errMes = this.$paramsCheck([
{ rule: '\\S', str: this.formLabelAlign.name, message: '请填写姓名!' },
{ rule: '\\S', str: this.formLabelAlign.region, message: '请输入地区!' },
]);
if (errMes != '') {
this.$message.error(errMes);
return;
}
}
如有正则,
const card = '^[1-9]\\d{5}[1-9]\\d{3}((0[1-9])|(1[0-2]))(0[1-9]|([1|2][0-9])|3[0-1])((\\d{4})|\\d{3}X)$';
{ rule: card, str: this.Popup.idCard, message: '身份证格式不匹配,请重新输入!' },