尝试使用$ resource发布时出错

用户1943020

我正在使用以下方法来调用entityService.postEntity函数:

   entityService.postEntity($scope.entityType, formData)
   .then(function (result) {
      $scope.grid.data.push(result);
   }, function (result) {
      alert("Error: " + result);
   })

这是我的实体资源和postEntity函数:

   var EntityResource = $resource('/api/:entityType', {}, {
      postEntity: { url: '/api/:entityType/', method: 'POST' },
   });

   postEntity: function (entityType, entity) {
      var deferred = $q.defer();
      EntityResource.postEntity({ entityType: entityType }, entity,
         function (resp) {
               deferred.resolve(resp);
         }, function (resp) {
               deferred.reject(resp.data.exceptionMessage);
         });
         return deferred.promise;
   },

以上对我有用。

现在,我尝试将其替换为:

 var entityResource = $resource('/api/' + $scope.entityType + '/');
 entityResource.save({}, formData)
    .success(function (data, status, headers, config) {
       var a = data;
    })
    .error(function (data, status, headers, config) {
       var b = data;
    });

这给了我错误:

Object #<b> has no method 'success'

有人可以给我一些关于我可能做错了什么的建议。

MBielski

$ resource返回$ then。像这样使用它:

var myThing = $resource(...);
var myResult = myThing.save({}, formData);
myResult.$then(function(data){}, function(data){});
//             success           failure

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章