多个异步同时请求-同时调用多个表单校验

Promise.all 接受一个 Promise 可迭代对象,因此如果要使用它来并行执行多个异步函数,你需要调用这些异步函数并使用返回的 Promise。直接将函数传递给 Promise.all 是不起作用的,因为它们不是 Promise--来自MDN

   const validateForm = async (ref) => {
        //表单校验本身返回的就是Promise对象
		return await proxy.$refs[ref].validate((valid) => {
			console.log(valid);
		});
	};

	const RequiredData = async () => {

	    const check = await Promise.all([validateForm('refForm1'), validateForm('refForm2')]);
		return check [0] && check [1];   
		
	};

	const determine = async () => {
		const check = await Promise.all([validateForm('refForm3'), validateForm('refForm4')]);

		if (check [0] && check [1]) {
			ElMessage.warning('校验通过');
		} else {
			ElMessage.warning('校验不通过');
		}
	};

  • 11
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值