当前位置: 首页 > news >正文

做一个公司网站价格营销型网站平台建设

做一个公司网站价格,营销型网站平台建设,如何做公众号小说网站赚钱,学软件开发哪所学校好场景是这样的: 在一个列表循环里,对数据进行赋值,调用接口,循环外后面的代码需等待所有请求执行完成后再去执行。 1. Promise.all实现 Promise.all() 方法接收一个 promise 的 iterable 类型(注:Array&am…

场景是这样的:

在一个列表循环里,对数据进行赋值,调用接口,循环外后面的代码需等待所有请求执行完成后再去执行。

1. Promise.all实现

Promise.all() 方法接收一个 promise 的 iterable 类型(注:Array,Map,Set 都属于 ES6 的 iterable 类型)的输入,并且只返回一个Promise实例,那个输入的所有 promise 的 resolve 回调的结果是一个数组。这个Promise的 resolve 回调执行是在所有输入的 promise 的 resolve 回调都结束,或者输入的 iterable 里没有 promise 了的时候。它的 reject 回调执行是,只要任何一个输入的 promise 的 reject 回调执行或者输入不合法的 promise 就会立即抛出错误,并且 reject 的是第一个抛出的错误信息。

伪代码如下
const pro = []
//一个列表循环
this.EarDataGrid.instance.getSelectedRowsData().forEach((item, index) => {// 取需要的数据const { BatchID, BatchName} = itemlet empty = {};empty['BatchID'] = BatchID //同步代码修改empty['BatchName'] = BatchName// 根据BatchID去请求xx接口,将请求合并用all请求pro.push(new Promise((res, rej) => {this.odataContext.bizBatchSetExpand.byKey(BatchID).then(r => {res(r[0])})}))}});//根据刚刚push的all请求
Promise.all(pro).then((res) => {//在这就可以等所有的返回结果可以得到// do some thing...})

2. for await…of实现(推荐)

这种方法是es6新语法,其介绍如下:

for await…of 语句创建一个循环,该循环遍历异步可迭代对象以及同步可迭代对象,包括:内置的 String, Array,类似数组对象 (例如 arguments 或 NodeList),TypedArray, Map, Set 和用户定义的异步/同步迭代器。它使用对象的每个不同属性的值调用要执行的语句来调用自定义迭代钩子。
类似于 await 运算符一样,该语句只能在一个async function 内部使用。

  • for…of 针对可迭代对象身上的(array, map, set, string, typedarray, argements)
    迭代的是对象列表中的值(value) ,一般情况遍历数组

  • for…in 针对对象的属性进行无序遍历,除了symbol类的属性
    遍历的是属性,一般情况适用于对象遍历

该方法使用起来,相比Promise.all要简洁的多,十分好用

代码示例如下:

/**根据批次调健康管理接口 */
async handleHealthApi() {// 使用for await...of实现处理异步操作for await (let item of this.batchList) {let params = `?$filter=BatchID eq '${item.BatchId}'&$orderby=ImmunityDate`;let { value } = await immtipApi.ImmunityPromptBatch(params)// do some thing...}
},

变量控制

这种方法不推荐,很不推荐,建议优先使用官方推出的语法,这种写法会产生没必要的if,维护起来会越来越麻烦。

list.forEach(function (item, i) {setTimeout(() => {//模拟异步回调中count++;console.log('执行请求ing');//执行完所有异步操作if (count === list.length) {console.log(' 请求执行完成✅',)// do some thing...}}, i)
})

写在最后

觉得有用 点个赞吧

http://www.yayakq.cn/news/7750/

相关文章:

  • 有没有帮别人做创意的网站个人养老金制度将落地
  • 做网站需要准备资料浙里建系统平台
  • 三角镇建网站公司百度云无法进入wordpress
  • 做购物网站那个好哈尔滨网站建设报价价格
  • 拟定建设方案物流网站网站开发项目报价
  • 网站备案通讯地址免费制作邀请函的app
  • 摄影网站首页设计宜昌 公司 网站建设
  • 微设计公司网站乔拓云智能建站免费注册
  • 建设银行软件官方网站下载网站原则
  • 网站建设公司西安wordpress功能插件
  • 什么叫H5网站开发网络舆情应急预案
  • 成都 企业网站设计优惠的网站建设
  • 晋城市 制作网站重庆网络公司
  • 建设部2018年工作要点网站百度官网网站首页
  • 商业网站建设与维护方案书网站开发有几个阶段
  • 什么浏览器好用可以看任何网站html5网站模板怎么修改
  • 网站群建设技术方案山东今天重大新闻
  • 网站后台密码重置怎么做网站的关键词
  • 多用户网站源码建设厅网站总经济师是干什么的
  • 咸阳网站建设费用wordpress 速度优化
  • 怎样创建行业门户网站上海网商电子商务有限公司
  • vps建设网站织梦做的网站打不开网页
  • 如何在八戒网便宜做网站怎么把自己做的网站发布出去
  • jsp旅游网站的建设什么是跨境电商怎么做
  • 做i网站宁津网站开发
  • 北京南站是中高风险地区吗易语言做自动登陆网站
  • 外贸建站 台州网页源码提取工具
  • 合肥瑶海区网站建设费用电子商务网站策划ppt
  • 宣传网站站点最有效的方式是长沙市网站推广电话
  • 外贸网站建设szjijie什么网站排名做的最好