我有一个返回 promise 的服务。我想检查返回的值是否为空对象。我怎样才能做到这一点。我想我需要以某种方式从 promise 对象中提取返回值。
这是我的资源:
app.factory('Auth', ['$resource',
function($resource) {
return $resource('/user/identify', {}, {
identify: {
url: '/user/identify'
},
});
}
]);
然后在服务中:
Auth.identify(function(data) {
// This always passes since data contains promise propeties
if (!_.isEmpty(data)) {
}
});
数据的控制台日志提供:
Resource
$promise: Object
$resolved: true
__proto__: Resource
当对象不为空但想要更通用的方法时,我可以检查预期的属性。
最佳答案
要解开返回值,您可以直接访问 promise :
Auth.identify()
.$promise
.then(function(data) {
if (!_.isEmpty(data)) {
// ...
}
});
关于angularjs - 检查 Angular 资源响应是否为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27094241/