【发布时间】:2014-04-09 16:14:25
【问题描述】:
我已将自定义 Array.prototype.functionName 添加到我的 js 文件中。我正在使用 AngularJS 1.2.3 当我调用 $resource 来返回查询时,它会将该自定义函数附加到响应数组中。当我遍历响应数组时,它会在解析自定义函数时返回异常,这就是我所相信的。谁能建议我如何解决这个问题
Array.prototype.functionName = function(){
//sorting
}
我在我的服务中这样调用我的 $resource
return $resource('/url',{},{
'List':{
method: 'GET',
isArray: true
}
});
并在我的控制器中调用它
returnResource.List().$promise.then(function(Data){
console.log(Data); //Data has my custom function append at the end
for(var i in Data){
//do something
}
});
【问题讨论】:
-
不确定您是否完全了解资源的工作原理。您可以更新帖子以显示您要调用的网址吗?
-
您需要将崩溃的代码提供给我们,因为我刚刚成功测试了您的示例。 plnkr.co/edit/HwSBYEo8xfPiH2WC8QWP
-
在我的 $promise.then 函数中,我迭代了从 Django rest 框架获得的响应数据,看起来像 [b,b,b,b,...,$promise,$已解决,函数名称]。它呈现所有 b 对象,但在最后抛出异常并终止我的迭代。如果我注释掉 functionName 定义,它不会出现在 Data 中但仍然显示相同的异常
-
你能更新上面的内容并展示你是如何迭代的吗? angular.forEach 和 array.forEach 都可以工作...
-
@Nix 我已经编辑过,我是如何迭代数据的,我想我应该尝试使用 angular.forEach
标签: javascript arrays angularjs