angularjs – Angular $q.when如何工作?

可以有人解释我$ q.when如何工作在AngularJS?
我试图分析如何$ http工作,并发现这:
var promise = $q.when(config);

这里是来自Chrome控制台的配置对象:

Object {transformRequest: Array[1],transformResponse: Array[1],cache: Object,method: "GET",url: "/schedule/month_index.html"…}
cache: Object
headers: Object
method: "GET"
transformRequest: Array[1]
transformResponse: Array[1]
url: "/schedule/month_index.html"
__proto__: Object

接下来发生什么?这个对象如何解决或拒绝?

调用$ q.when需要一个promise或任何其他类型,如果它不是一个promise,那么它将它包装在promise和调用resolve。如果你传递一个值给它,那么它永远不会被拒绝。

从文档:

Wraps an object that might be a value or a (3rd party) then-able promise into a $q promise. This is useful when you are dealing with an object that might or might not be a promise,or if the promise comes from a source that can’t be trusted.

相关文章

AngularJS 是一个JavaScript 框架。它可通过 注:建议把脚本放在 元素的底部。这会提高网页加载速度,因...
angluarjs中页面初始化的时候会出现语法{{}}在页面中问题,也即是页面闪烁问题。出现这个的原因是:由于...
AngularJS 通过被称为指令的新属性来扩展 HTML。AngularJS 指令AngularJS 指令是扩展的 HTML 属性,带有...
AngularJS 使用表达式把数据绑定到 HTML。AngularJS 表达式AngularJS 表达式写在双大括号内:{{ expres...
ng-repeat 指令可以完美的显示表格。在表格中显示数据 {{ x.Name }} {{ x.Country }} 使用 CSS 样式为了...
$http是 AngularJS 中的一个核心服务,用于读取远程服务器的数据。读取 JSON 文件下是存储在web服务器上...