$q和promise
来源:互联网 发布:小满软件 垃圾 编辑:程序博客网 时间:2024/06/07 07:22
var deferred = $q.defer();\\生成deferred异步对象
deferred.resolve(rtns);\\执行到这里时,改变deferred状态为执行成功,返回rtns为从后台取到的数据,可以继续执行then,done
deferred.reject(data);\\执行到这里时,改变deferred状态为执行失败,返回data为报错,可以继续执行fail
return deferred.promise;\\起到保护作用,不允许函数外部改变函数内的deferred状态
多个异步请求写法:
var app = angular.module('app',[]);
app.controller('promiseControl',function($scope,$q,$http) {
function getJson(url){
var deferred = $q.defer();
$http.get(url)
.success(function(d){
d = parseInt(d);
console.log(d);
deferred.resolve(d);
});
return deferred.promise;
}
getJson('json1.txt').then(function(){
return getJson('json2.txt');
}).then(function(){
return getJson('json1.txt');
}).then(function(){
return getJson('json2.txt');
}).then(function(d){
console.log('end');
});
});
使用then方法按序进行
- $q和promise
- AngularJS 的 $q 和 Promise
- AngularJS学习之$q和promise介绍
- Angular通信$q服务和promise对象
- AngularJs中promise 和 $q 的一点解释
- AngularJS中的$http、$q服务和promise对象的联系
- $q & promise service
- angularJS $q and promise
- angular $q,defer,promise
- Angular的 $q, defer, promise
- nodejs promise for q.js
- nodejs--promise之Q模块
- angular中的$q与promise(综合)
- AngularJS 中的Promise --- $q服务详解
- AngularJS 中的Promise --- $q服务详解
- angular 异步处理模式promise---$q
- AngularJS 中的Promise --- $q服务详解
- 浅谈Angular的 $q, defer, promise
- MySQL 字符串转时间
- Eclipse 报错There are no resources that can be added or removed from the server
- 【MySQL】关于MySQL添加索引后提升的查询效率也很少的解决办法
- Biterm Topic Model(BTM)的python 实现
- 从上往下打印二叉树
- $q和promise
- 一个简单的图片上传预览demo
- 持续集成工具jenkins
- 工信部信通院与阿里云合作, 共同提升中国APP质量
- 编译和使用apue.3e源码并实现第一个ls.c程序
- 计算机端口号
- Jquery选中效果
- 【python调用windows CLI】调用adb统计Android app的流量消耗
- linux process退出方式