Promise的定义:
Promise
对象是一个代理对象(代理一个值),被代理的值在Promise对象创建时可能是未知的。它允许你为异步操作的成功和失败分别绑定相应的处理方法(handlers)。 这让异步方法可以像同步方法那样返回值,但并不是立即返回最终执行结果,而是一个能代表未来出现的结果的promise对象
----来自MDN的解释
一、Promise.all()
1、Promise.all()方法的初步尝试:
下边代码为Promise的调用!
/** * 调用dao层,对数据进行处理 */ let result1 = await loginuserDao.userLoginDao(userName,passWord); let result2 = await loginuserDao.userLoginDao(userName,passWord); let list1 = []; list1.push(result1); list1.push(result2); let list = await Promise.all([result1,result2]); console.log('调用Promise.all方法返回的结果'); console.log(list); console.log(list1);
下边为调用的结果
[ [ BinaryRow { id: 2, loginname: 'Emma', password: '112233' } ], [ BinaryRow { id: 2, loginname: 'Emma', password: '112233' } ] ] [ [ BinaryRow { id: 2, loginname: 'Emma', password: '112233' } ], [ BinaryRow { id: 2, loginname: 'Emma', password: '112233' } ] ]
结果总结:返回的都是list集合,所以,我初步认为,调用多个接口返回的值,我可以用Promise来进行集合封装,不需要在自定义一个list集合了,方便一点而已!并没有什么卵用!