@action getBaseInfo = async() => {
let baseInfo;
try {
baseInfo = await getBaseInfo(this.id);
if (baseInfo) {
this.baseInfo = baseInfo;
// 发起请求后拿到 promise
const visitedPromise = getVisitedCount(this.id);
const subscribedPromise = getSubscribedCount(this.id);
const connectionPromise = getConnection(this.id);
// 等待 promise 返回再进行操作
baseInfo.visitedCount = await visitedPromise;
baseInfo.subscribedCount = await subscribedPromise;
const connection = await connectionPromise;
baseInfo.phoneNumber = connection.phoneNumber;
baseInfo.email = connection.email; this.baseInfo = baseInfo;
}
} catch (e) {
throwError(e);
}
};

多个请求的时候不使用 await,而是拿到请求的 promise,将 await 用在 promise 上,等待 promise 返回

async await 同时发起多个异步请求的方法的更多相关文章

  1. MVC+Spring.NET+NHibernate .NET SSH框架整合 C# 委托异步 和 async /await 两种实现的异步 如何消除点击按钮时周围出现的白线? Linq中 AsQueryable(), AsEnumerable()和ToList()的区别和用法

    MVC+Spring.NET+NHibernate .NET SSH框架整合   在JAVA中,SSH框架可谓是无人不晓,就和.NET中的MVC框架一样普及.作为一个初学者,可以感受到.NET出了MV ...

  2. 使用 async await 封装微信小程序HTTP请求

    1. 编写将普通回调函数形式的方法转换为promise方法的promisic方法 // util.js const promisic = function (func) { return functi ...

  3. 关于我们ajax异步请求的方法与知识

      做前端开发的朋友对于ajax异步更新一定印象深刻,作为刚入坑的小白,今天就和大家一起聊聊关于ajax异步请求的那点事.既然是ajax就少不了jQuery的知识,推荐大家访问www.w3school ...

  4. fetch + async await 使用原生JS发送网络请求

    由于现在主流浏览器支持Fetch API,无需引用其他库就能实现AJAX,一行代码就搞定,可以说是非常方便了. export default { name: 'HelloWorld', data() ...

  5. angular中处理多个异步请求的方法汇总

    在实际业务中经常需要等待几个请求完成后再进行下一步操作.但angularjs中$http不支持同步的请求. 解决方法一: $http多层嵌套 $http.get('url1').success(fun ...

  6. async,await怎么用

    async声明一个函数是异步的,await用于等待异步完成,并且await只能在async中使用. 使用async,await并行处理请求,速度减半: 将多个promise直接发起请求,先执行asyn ...

  7. 抓住异步编程async/await语法糖的牛鼻子: SynchronizationContext

    长话短说,本文带大家抓住异步编程async/await语法糖的牛鼻子: SynchronizationContext 引言 C#异步编程语法糖async/await,使开发者很容易就能编写异步代码. ...

  8. [.NET] 利用 async & await 的异步编程

    利用 async & await 的异步编程 [博主]反骨仔 [出处]http://www.cnblogs.com/liqingwen/p/5922573.html  目录 异步编程的简介 异 ...

  9. NodeJs通过async/await处理异步

    ##场景 远古时代 我们在编写express后台,经常要有许多异步IO的处理.在远古时代,我们都是用chunk函数处理,也就是我们最熟悉的那种默认第一个参数是error的函数.我们来模拟一个Mongo ...

随机推荐

  1. JS案例四:表格的隔行换色以及高亮显示

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. lunx中部分命令总结

    一.文件和目录操作命令ls  全拼list,功能是列出目录的内容及其内容属性信息. cd  全拼change directory,功能是从当前工作目录切换到指定的工作目录. cp  全拼copy,其功 ...

  3. web开发中 代码解决部分IE兼容问题

    首先是自己遇到问题: 一套系统,以前的开发asp旧+c#新后台管理扩展.完善后,在2013年前基本无问题,很是畅顺. 其中.到升级了浏览器后.例如ie9以后,则问题出现了. 如图:   这是一个js的 ...

  4. jQuery dataTables 列不对齐的原因

    如果把 jQuery dataTables 用在初始化时为隐藏的区域中,会发现表头和内容的列是不对齐的. 解决方案: 如果是折叠的,可以加上: $('#myCollapsible').on('show ...

  5. python 实现程序重启

    def restart_program(): """Restarts the current program. Note: this function does not  ...

  6. Java并发知识分享

    volatile的内存语义 从JSR-133(即从JDK1.5开始),volatile变量的写-读可以实现线程之间的通信 当写一个volatile变量时,JMM会把该线程对应的本地内存中的共享变量值刷 ...

  7. WebStorm Goland PyCharm 等JetBrains验证服务器

    http://idea.iteblog.com/key.php http://idea.idbry.com 2017年12月08日20:05:08 http://xdouble.cn:8888/ ht ...

  8. linux之正则

    grep命令: -V      打印grep的版本号 -E      解释PATTERN作为扩展正则表达式,也就相当于使用egrep. -F      解释PATTERN作为固定字符串的列表,由换行符 ...

  9. <FAT文件系统> -- DBR

    FAT16是比较简单的文件系统,相比NFTS等文件系统,该系统的学习比较easy,容易上手,同时对于数据存储的机理以及数据的恢复有一定的帮助.FAT文件系统有一定的弊端,不能支持太大的数据存储. FA ...

  10. dos4章

    批处理中的变量,我把他分为两类,分别为"系统变量"和"自定义变量" 我们现在来详解这两个变量! 一.系统变量 他们的值由系统将其根据事先定义的条件自动赋值,也就 ...