AngularJS 中的 $digest() 和 $apply()

2017-03-10
阅读 2 分钟
2.4k
AngularJS 只会关心在 AngularJS 的执行上下文中 发生的数据模型(model)的变化(比如: 改变数据的代码在 $apply() 里面)。AngularJS 内建的指令 也会自动触发 $digest 循环, 所以任何数据模型(model)的改变也都会反映到视图中。 但是, 如果更改一个 不在 AngularJS 执行上下文中 的数据模型(model), 就需要人为的调用 $ap...

AngularJS 中的 Factory、Service以及 Provider的区别

2017-03-09
阅读 4 分钟
2.9k
AngularJS 的供应商($provide) $provide 服务负责告诉 AngularJS 如何创建一个新的可注入的东西: 即服务。 服务会被叫做供应商的东西来定义, 可以使用 $provide 来创建一个供应商。 创建供应商的方法: 使用 $provide 中的 provider() 方法来定义一个供应商; 通过要求 $provide 被注入一个应用的 config 函数中来获得 $pr...

AngularJS 使用 Promise

2017-03-09
阅读 2 分钟
3.1k
我们可以先使用 $q 的 defer() 方法创建一个 deferred 对象, 然后通过 deferred 对象的 promise 属性, 将这个对象变成一个 promise 对象; 这个 deferred 对象还提供了三个方法, 分别是 resolve(), reject(), notify()。

AngularJS 的依赖注入

2017-03-09
阅读 3 分钟
3.6k
如果没有明确的什么, AngularJS 会假定参数名称就是依赖的名称。因此, 它会在内部调用函数对象的 toString() 方法, 分析并提取出函数的参数列表, 然后通过 $injector 将这些参数注入进对象实例。