如何在angularjs中处理可能是$ q承诺的对象?

big*_*ind 1 promise angularjs

如果一个函数可以直接返回一个值,或者一个$ q.promise,那么处理该值的最佳方法是什么?有没有办法检查一个物体的天气$q.defer().promise,还是有另一种方法来处理这种不确定性?

Cuo*_* Vo 6

$q.when(value).then(...)

$q.when取任何价值.如果该值不是承诺,它将作为承诺包装并立即解决,否则,它只是返回.来自Angular的q实现:

将一个可能是值的对象或(第三方)包装成$ q承诺.当您处理可能是或可能不是promise的对象,或者promise是来自不可信任的源时,这非常有用.

@param {*} value值或promise @returns {Promise}返回传递的值或promise的promise