angular 的广义回调管理
Posted 川衡
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了angular 的广义回调管理相关的知识,希望对你有一定的参考价值。
IOC容器是什么?
全称是Inversion Of Control, 可译为反转控制,我一般叫控制反转。主要是通过容器管理对象约束关系。
基本概念
不创建对象,但是要描述创建他们的方式。在代码中不直接与对象和服务连接,但在配置文件进行配置,用来描述哪一个组件需要哪一项服务。简单来说就是 容器控制程序直接的关系,不是传统实现那样由代码直接控制。
控制权由应用代码转到外部容器,控制权转移即反转。
昨天学习的angularJs的服务的五种方式,今天继续学习…
广义回调管理
http服务就是在ng的广义异步回调管理之上封装出来的。angular的异步回调管理机制就是ng的$q服务。
使用的方法,基本上是:
- 通过 $q 服务得到一个 deferred 实例
- 通过 deferred 实例的 promise 属性得到一个 promise 对象
- promise 对象负责定义回调函数
- deferred 实例负责触发回调
$q
$q 有四个方法:
- $q.all() 合并多个 promise ,得到一个新的 promise
- $q.defer() 返回一个 deferred 对象
- $q.reject() 包装一个错误,以使回调链能正确处理下去
- $q.when() 返回一个 promise 对象
promise
promise对象只有then()一个方法,注册成功回调函数和注册失败回调函数,再返回一个promise对象,用于链式调用。
以上是关于angular 的广义回调管理的主要内容,如果未能解决你的问题,请参考以下文章
广义的 UITableViewDelegate 和 UITableViewDataSource
R语言广义线性模型函数GLMglm函数构建逻辑回归模型(Logistic regression)构建仿真数据集控制所有其它预测变量进而评估单个预测因子对结果概率的影响