您的位置:首页 > Web前端 > AngularJS

angular 的广义回调管理

2016-02-26 17:20 134 查看

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对象,用于链式调用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: