0
如果我有一个工厂,我想回到所有任务:从angularjs资源返回结果
App.factory('Task', function(TaskResource) {
return {
all: function() {
TaskResource.query().then(function(results) {
return results;
}
}
};
});
,我尝试在“TasksController”使用它:
App.controller('TasksController', function('Task') {
$scope.tasks = Task.all();
});
我得到的'未定义'的结果。如果我将结果记录在工厂本身,它们会正确返回。有人能帮助我理解为什么会发生这种情况吗?谢谢。
谢谢你的解释。你知道我怎么可以修改这个,以便它能够返回承诺的结果吗? – sturoid
由于您的返回值取决于承诺,因此您应该返回承诺,作为'all'功能的结果。你可以返回TaskResource.query()'promise或返回一个新的promise,并在TaskResource.query()解决时解决它。 – RaviH