vue处理多个异步请求_promise处理多个相互依赖的异步请求(实例讲解)-程序员宅基地

技术标签: vue处理多个异步请求  

promise处理多个相互依赖的异步请求(实例讲解)

发布时间:2020-09-05 10:41:05

来源:脚本之家

阅读:143

在项目中,经常会遇到多个相互依赖的异步请求。如有a,b,c三个ajax请求,b需要依赖a返回的数据,c又需要a和b请求返回的数据。如果采用请求嵌套请求的方式自然是不可取的。导致代码难以维护,如何请求很多。会出现很多问题。

Promise就是解决多个异步请求的问题。 Promise是ES6提供的一个对象,用来传递异步操作的消息。

Promise有三种状态:Pending(进行中)、Resolved(已完成,又称 Fulfilled)和 Rejected(已失败)。

直接上代码。有a,b请求,b依赖a的请求数据。如下:

function a(){

return new Promise(function(res,rej){

$.ajax({

url:"a",

type: "GET",

async:true,

dataType:"json",

success:function(data){

console.log(data,"a");

res(data);

}

})

});

}

function b(data){

console.log(data,"data");

return new Promise(function(res,rej){

$.ajax({

url:"b",

type: "POST",

async:true,

data:JSON.stringify(data),

dataType:"json",

success:function(data){

console.log(data,"b");

res();

}

})

});

}

$("#btn").click(function(){

a().then(function (data){

b(data);

}).then(function(){

})

})

接口url在网上找了一个,可以看运行结果:

以上这篇promise处理多个相互依赖的异步请求(实例讲解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持亿速云。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42232139/article/details/112042228

智能推荐

ARP(地址解析协议)_arp协议只工作在局域网吗-程序员宅基地

文章浏览阅读973次。不能找到B的IP地址。A主机的ARP会在该局域网内广播发送一个ARP请求分组,携带源主机(A)的IP地址,MAC地址,目的主机的IP地址。在该局域网内的所有主机运行的ARP进程都会收到该请求分组,当主机IP与请求分组内携带的目的主机的IP地址相同时会收下该分组并向A发送响应分组,响应报文中写入自己的MAC地址。网络层使用IP地址,但实际网络的链路上传送数据帧时,最终还是必须使用链路层的MAC地址,IP地址与MAC地址因为格式不同所以并不存在简单的映射关系(例如,IP地址有32位,MAC地址有48位)。_arp协议只工作在局域网吗

[SDOI2010]所驼门王的宝藏-程序员宅基地

文章浏览阅读34次。https://www.zybuluo.com/ysner/note/1250991题面有一个\(n*m\)的网格图,其中有\(tot\)个有门+宝藏的网格。这些门可以传送,且分为三类:门一:可到同行的任意一格门二:可到同列的任意一格门三:可到相邻的八格。从任意点出发和终止,最多能经过多少有宝藏的网格。\(tot\leq10^5,n,m\leq10^6\)解析首先...

matlab中hist bar_matlab hist bar-程序员宅基地

文章浏览阅读1k次,点赞2次,收藏4次。1.n=hist(Y);默认十个等间隔区间,并返回每个范围内的Y的元素个数作为一行向量,如下图:bar(n) bar函数是用来画直方图的。2.n=hist(Y,X);X是一个事先给定的区间划分,统计Y在X这个区间划分下的个数,如下图bar(x,n) 是在x和n对应3.n=hist(Y,nbins);nbins是间隔数,也就是说我们应该统计多少个间隔,这里设nbins=20,..._matlab hist bar

解决arm启动过程中设置ulimit -c unlimited 不生效的方法_ulimit -c unlimited不生效-程序员宅基地

文章浏览阅读5.5k次,点赞4次,收藏11次。对于嵌入式Linux工程师来说,在工作中经常遇到段错误,而其中调试段错误的最好方式就是core_dump调试。core_dump调试要满足几个条件:1、ulimit -c unlimited,取消core file的大小限制;2、echo /proc/sys/kernel/core_pattern >mydir,设置生成core的目录;3、代码中取消singal相关的信号注册函数,但是很多段错误是发生在设备启动的过程中,所以这时候就需要在相关的脚本中设置在几个命令,由于环境变量的关系发现_ulimit -c unlimited不生效

动力节点数据结构课堂笔记 2021.11.23-11.29-程序员宅基地

文章浏览阅读251次。1、数据结构的分类:链表,数组,二叉树,图,栈,队列线性结构:有序数据元素,线性表,数组,栈,队列,链表非线性结构:树,图,二维数组2、栈的特点,先进后出,只允许在栈顶进行插入(push)和删除(pop)操作队列的特点,先进后出单向链表和双向链表,单向链表每一个节点都包含自身的数值和下一个内存地址双向链表每一个节点,包含有自身的数值,上一个连接的地址,下一个连接的地址3、排序算法:插入排序,选择排序,希尔排序,归并排序,基数排序,快速排序,冒泡排序基数排序:按照位数来进行排序,从个位开始排序_动力节点

bode函数_利用maltab的system identification获取系统的传递函数加速你的环路设计-程序员宅基地

文章浏览阅读714次。前言:昨天晚上发了一篇用手动添加零极点来模拟系统传递函数的文章,今天跟大神请教了一番,利用system identification来识别bode图,可以获得更加精确的模型,从而以更准确更迅速的来实现环路设计,这里要感谢王磊大大,感谢您的帮助。实现方法:利用仿真软件获得系统从控制到输出的bode图数据,然后将数据导入到system identification,使用波形分析功能来..._matlab system identification分析波特图

随便推点

Python数据分析之pandas库的使用详解_python中pandas库详解-程序员宅基地

文章浏览阅读1.8k次,点赞9次,收藏44次。本篇文章目录一、前言二、什么是pandas三、pandas安装四、pandas的常用数据类型4.1 series:表示一维,带标签数组,一行或一列4.1.1创建series4.1.2 打印索引值4.1.3 打印数据值4.1.3 创建一个具有标签索引的series4.1.4 使用python字典创建series4.1.5 根据索引值查询数据4.2 DataFrame:表示二维,多行多列五、数据的读取......_python中pandas库详解

android监听短信发送和接收_android 监听短信-程序员宅基地

文章浏览阅读1.8k次。这一段内容如果要使用广播就加service。_android 监听短信

基于springboot+Mybatis的学生成绩管理系统_springboot学生成绩管理系统-程序员宅基地

文章浏览阅读2.2k次,点赞2次,收藏31次。基于springboot+mybatis的学生成绩管理系统_springboot学生成绩管理系统

SpringBoot+Vue3项目跨域配置及Set-Cookie:SameSite=Lax 问题_spring boot 跨域 去除自动返回samesite=lax-程序员宅基地

文章浏览阅读417次,点赞3次,收藏11次。Set-Cookie:SameSite=Lax 问题,跨域配置_spring boot 跨域 去除自动返回samesite=lax

大数据毕设选题 - 疫情实时数据分析可视化(Flask python)_pathon数据可视化作品选题-程序员宅基地

文章浏览阅读3.3k次。 Hi,大家好,这里是丹成学长的毕设系列文章! 对毕设有任何疑问都可以问学长哦!这两年开始,各个学校对毕设的要求越来越高,难度也越来越大… 毕业设计耗费时间,耗费精力,甚至有些题目即使是专业的老师或者硕士生也需要很长时间,所以一旦发现问题,一定要提前准备,避免到后面措手不及,草草了事。为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天要分享的新项目是大数据-实时疫情数据可视化项目学长这里给一个题目综合评分(每项满分5分)难度系数:4分工作量:4分创新点:3分。_pathon数据可视化作品选题

美团面试—手撕numpy之fps点云最远点采样实现_python 最远点采样-程序员宅基地

文章浏览阅读5.2k次。FPS没有想到不按套路出牌的美团今早就撕了这个。点云最远点采样,从一堆点集中选出一些点,使得他们尽可能地远离。这样采样出来的点能比较好的表征整个轮廓。在pointnet++中就用到过。整体思路是:分别维护一个已选取和待选取的点云集合。先从点云集合中选出一个点,然后计算其余所有点到该点的距离,距离最大的那个点是下次要加入的点。当pick集合中有多个点时,距离的定义为到集合每个点距离中的最小距离。关于距离的计算:维护一个distance列表,对于每次pick出来的点,去更新distance。可以利用_python 最远点采样

推荐文章

热门文章

相关标签