尝试从控制器通过模型到服务进行$ resource调用,无法将响应返回给控制器

时间:2015-09-30 15:59:57

标签: angularjs ngresource

我有一个依赖于模型的控制器。它叫

AccountModel.saveAccount(vm.Account,function(data){
            response = data;
        },function(data){
            response = data;
        });

模型调用服务的保存功能:

return AccountService.save(request,function(resp){
            return resp;
        },function(resp){
            return resp;
        });

并且该功能如下所示:

function save(Account) {
        return AccountResource.save(Account, function (resp) {
            return resp;
        }, function (resp) {
            return resp;
        });

    }

这个想法是,save函数会将响应返回给模型,模型会将响应返回给控制器,控制器稍后会执行其他操作。然而,这一切都没有发生。

响应(在控制器中)仍未定义。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

Angular的服务有点不同,save方法返回和对象:

{$promise: promisveValue, $resolve: something}

所以要正确使用它:

myResource.save(resouceObj, handler);

myResource.save().$promise.then(handler);

这是您应该做的草稿,尝试将其集成到您的代码中。