博客
关于我
AngularJS $q
阅读量:351 次
发布时间:2019-03-04

本文共 990 字,大约阅读时间需要 3 分钟。

$q用于执行异步操作

一、基本用法

    
AngularJS

二、$q多个promise串行

function f1() {       var defer = $q.defer();   setTimeout(function() {          defer.resolve(1);   }, 2000);   return defer.promise;}function f2() {       var defer = $q.defer();    setTimeout(function() {           defer.resolve(2);    }, 2000);    return defer.promise;}function f3() {       var defer = $q.defer();    setTimeout(function() {           defer.resolve(3);    }, 2000);    return defer.promise;}//f1进行完,在进行f2,然后进行f3,后一个程序等待前一个完成f1().then(function (data) {       console.log(data);  // 2s后打印1    return f2();}).then(function (data) {       console.log(data);   // 再过2s后打印2    return f3();}).then(function (data) {       console.log(data);  // 再过2s后打印3});

三、 $q.all

$q.all,表示只有当传入的多个deferred执行成功才算成功

var p=$q.all({       dataA:deferA.promise,    dataB:deferB.promise})p.then(function(result){       console.log(result.dataA); // this is DATA A    console.log(result.dataB); // this is DATA B})

转载地址:http://wpqr.baihongyu.com/

你可能感兴趣的文章
centos7防火墙导致nginx无法访问
查看>>
python绘制一份完美的中国地图
查看>>
Python 超级简单精准计算地点日出日落时间
查看>>
准确率94%!Python 机器学习识别微博或推特机器人
查看>>
Python 元组Tuple 相对于数组List的优势
查看>>
Android OTA升级
查看>>
Android基本知识
查看>>
在Java中,return null 是否安全, 为什么?
查看>>
命令模式【Command Pattern】
查看>>
如何将自己写的代码编进系统
查看>>
数据结构有哪些
查看>>
OSI 7 层网络模型
查看>>
Spring Bean 生命周期
查看>>
JDK 内置线程池
查看>>
JVM 参数默认值查询
查看>>
异常的继承结构
查看>>
SVN 和 Git 区别
查看>>
JDK 内置的多线程协作工具类的使用场景
查看>>
redis 单线程为什么快
查看>>
Java 源代码到运行的过程
查看>>