解决Angularjs异步操作后台请求用$q.all排列先后顺序问题


Posted in Javascript onNovember 29, 2019

最近我在做angularjs程序时遇到了一个问题

1.页面有很多选择框,一个选择框里面有众多的选择项,和一个默认选定的项,像下面这样(很多选择框,不只一个):

解决Angularjs异步操作后台请求用$q.all排列先后顺序问题

2.众多的选项要从后台接口得到,默认项从另一个后台接口得到,这就需要$promise.then()操作

3.而多个$promise.then()属于异步操作,先后顺序不是一定的,如果先得到众多选项,后得到默认值,显示就没有问题,如果顺序颠倒,默认项就会为空,这不是我想要的

4.这就需要众多选项的后台请求都获得完,才去后台请求默认值,

就用$q.all方法

let list = $q.all({    // 多个后台请求,部分先后顺序
 url1: getUrl1().$promise,
 url2: getUrl2().$promise,
 url3: getUrl3().$promise,
});
$scope.list.then(function (result) {
// 三个后台请求结果
 result.url1
 result.url2
 result.url3
}).finally(function () {  // finally的优点:1.无论成功失败都会执行 2.前面三个请求结束后才会执行
 // 最后一个后台请求

 // TODO
});

补充:当然还有then().then().then()......这种方法,就把请求顺序执行了,不过select众多选项的后台请求不需要先后顺序,只是默认项需要最后执行,我就选择$q.all这种方法了。

总结

以上所述是小编给大家介绍的解决Angularjs异步操作后台请求用$q.all排列先后顺序问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
Prototype使用指南之base.js
Jan 10 Javascript
Ext.MessageBox工具类简介
Dec 10 Javascript
JQuery Tips(2) 关于$()包装集你不知道的
Dec 14 Javascript
Javascript将string类型转换int类型
Dec 09 Javascript
页面只能打开一次Cooike如何实现
Dec 04 Javascript
给文字加上着重号的JS代码
Nov 12 Javascript
JS中产生20位随机数以0-9为例也可以是a-z A-Z
Aug 01 Javascript
jQuery异步上传文件插件ajaxFileUpload详细介绍
May 19 Javascript
jQuery实现文本框输入同步的方法
Jun 20 Javascript
JS禁止查看网页源代码的实现方法
Oct 12 Javascript
JavaScript实现两个select下拉框选项左移右移
Mar 09 Javascript
vue 下列表侧滑操作实例代码详解
Jul 24 Javascript
vue 组件开发原理与实现方法详解
Nov 29 #Javascript
vue ajax 拦截原理与实现方法示例
Nov 29 #Javascript
VUE 实现动态给对象增加属性,并触发视图更新操作示例
Nov 29 #Javascript
js中关于Blob对象的介绍与使用
Nov 29 #Javascript
js blob类型url的视频下载问题的解决
Nov 29 #Javascript
JavaScript之Blob对象类型的具体使用方法
Nov 29 #Javascript
VuePress 中如何增加用户登录功能
Nov 29 #Javascript
You might like
php下用GD生成生成缩略图的两个选择和区别
2007/04/17 PHP
php+js iframe实现上传头像界面无跳转
2014/04/29 PHP
php实现自定义中奖项数和概率的抽奖函数示例
2017/05/26 PHP
关于ThinkPhp 框架表单验证及ajax验证问题
2017/07/19 PHP
基于Laravel 多个中间件的执行顺序详解
2019/10/21 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
2020/02/15 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
2020/03/27 PHP
Ajax 数据请求的简单分析
2011/04/05 Javascript
把jquery 的dialog和ztree结合实现步骤
2013/08/02 Javascript
JavaScript中创建类/对象的几种方法总结
2013/11/29 Javascript
js控制页面的全屏展示和退出全屏显示的方法
2015/03/10 Javascript
深入分析Javascript跨域问题
2015/04/17 Javascript
javaScript中的原型解析【推荐】
2016/05/05 Javascript
jQuery实现简洁的轮播图效果实例
2016/09/07 Javascript
Easyui Tree获取当前选择节点的所有顶级父节点
2017/02/14 Javascript
vue如何使用 Slot 分发内容实例详解
2017/09/05 Javascript
浅谈react 同构之样式直出
2017/11/07 Javascript
node.js学习笔记之koa框架和简单爬虫练习
2018/12/13 Javascript
使用jQuery实现掷骰子游戏
2019/10/24 jQuery
初学Python函数的笔记整理
2015/04/07 Python
windows下 兼容Python2和Python3的解决方法
2018/12/05 Python
深入了解和应用Python 装饰器 @decorator
2019/04/02 Python
python多进程并发demo实例解析
2019/12/13 Python
python的Jenkins接口调用方式
2020/05/12 Python
Docker如何部署Python项目的实现详解
2020/10/26 Python
意大利时尚精品店:Nugnes 1920
2020/02/10 全球购物
大学生自荐书范文
2013/12/10 职场文书
迷你西餐厅创业计划书范文
2013/12/31 职场文书
公司营业员的自我评价
2014/03/04 职场文书
五一口号
2014/06/19 职场文书
超市店庆活动方案
2014/08/31 职场文书
群众路线个人自我剖析材料
2014/10/07 职场文书
毕业实习指导教师评语
2014/12/31 职场文书
大学生简历自我评价2015
2015/03/03 职场文书
golang json数组拼接的实例
2021/04/28 Golang
CSS实现隐藏搜索框功能(动画正反向序列)
2021/07/21 HTML / CSS