Merge branch 'dev' of ssh://git.online.zzfzyc.com:10022/mp/EShop into dev

This commit is contained in:
2022-05-09 09:51:47 +08:00
31 changed files with 9262 additions and 8511 deletions
+65 -1
View File
@@ -22,4 +22,68 @@ export const goLink = (path = '', params = {}, type:false|true = false) => {
}
}
}
}
/**
* 判断对象为空
* @param object
* @returns
*/
export const isEmptyObject = (object: any)=>{
if(object==undefined||object==null||Number.isNaN(object)){
return true;
}else{
if(object.constructor==Object){
return Reflect.ownKeys(object).length==0;
}else if(object.constructor==Array){
return object.length==0;
}else if(object.constructor==String){
return object=="";
}
}
return false;
}
/**
* 表单检索
* @param data
* @param rules
* @param message
* @returns
*/
export const retrieval = (data: any, message: string="请填写完信息", rules?: Object)=>{
return new Promise((resolve, reject)=>{
if(rules){
const keys = Reflect.ownKeys(rules);
const result = keys.some((key:any)=>{
for(let item of (rules as any)[key]){
let _res = false;
if(item.validator){
if(item.validator(data[key],item)){
_res=true;
}
}else if(item.regex){
if(!item.regex.test(data[key])){
_res=true;
}
}else{
if(isEmptyObject(data[key])){
_res=true;
}
}
message = item.message;
return _res;
}
});
if(result){
reject(message);
}
}else{
const keys = Reflect.ownKeys(data);
if(keys.some((key:any)=>isEmptyObject(data[key]))){
reject(message);
}
}
resolve(null);
})
}