延迟对象承诺与$resource
服务承诺之间的区别是什么?
我知道,在某些情况下,使用$q
服务来创建deferer
,然后解决响应并返回承诺。
其他人同时可能会做return $resource(...).get().$promise;
。
什么是差异。在这两种方法之间?
答案 0 :(得分:3)
从$resource
返回的承诺是最初使用$q.defer()
(或更新的更现代的承诺构造函数)创建的承诺。
某人是$http
内部使用的$resource
服务 - 您正在使用他们为您创建的承诺。
通常,在使用异步时,您只需要在代码的最低级别使用$q.defer
或promise构造函数 - 否则通常最好使用promise chaining。否则你最终会with the explicit construction anti-pattern。