Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否有一种方法可以重新映射使用ng repeat迭代的对象的键值?_Javascript_Angularjs_Angularjs Ng Repeat_Ng Repeat_Soundmanager2 - Fatal编程技术网

Javascript 是否有一种方法可以重新映射使用ng repeat迭代的对象的键值?

Javascript 是否有一种方法可以重新映射使用ng repeat迭代的对象的键值?,javascript,angularjs,angularjs-ng-repeat,ng-repeat,soundmanager2,Javascript,Angularjs,Angularjs Ng Repeat,Ng Repeat,Soundmanager2,我使用的是angularjs-soundmanager2,对象数组必须符合此对象 {id: n, title: 'Title', artist: 'Artist', url: 'URL'} {id: n, filename: 'URL', title: 'Title'} 我正在访问一个给我这个对象的远程API {id: n, title: 'Title', artist: 'Artist', url: 'URL'} {id: n, filename: 'URL', title: 'Titl

我使用的是angularjs-soundmanager2,对象数组必须符合此对象

{id: n, title: 'Title', artist: 'Artist', url: 'URL'}
{id: n, filename: 'URL', title: 'Title'}
我正在访问一个给我这个对象的远程API

{id: n, title: 'Title', artist: 'Artist', url: 'URL'}
{id: n, filename: 'URL', title: 'Title'}
我想做的是重新映射后一个对象以符合前一个对象。我尝试在ng repeat中使用过滤器,但如果没有得到迭代中止(angular给我这个错误
[$rootScope:infdig]10$digest()迭代已达到。中止!

在HTML方面:

<a ng-repeat="sample in selected.audio | mapAudio" href="#" class="list-group-item">{{sample.title}}</a>

为什么不更新源代码列表

<a ng-repeat="sample in getFullModels(selected.audio) | mapAudio" href="#" class="list-group-item">{{sample.title}}</a>


#getFullModels
必须编码才能返回完整的模型表示。

为什么不更新源列表

<a ng-repeat="sample in getFullModels(selected.audio) | mapAudio" href="#" class="list-group-item">{{sample.title}}</a>


#getFullModels
必须进行编码才能返回完整的模型表示。

是否有理由在ng repeat中执行此操作?这可以在响应返回时调用远程api的服务中完成吗?看起来,如果您需要这种特定格式的数据,您可能需要这种格式的数据。如果你做一次这样的转换,它会更干净。然后,您的视图控制器都不需要知道该格式不是soundmanager2格式。@mcgraphix我希望我可以在远程服务中这样做,但不幸的是,我无法控制响应格式。你是对的,这样做完全有道理,但我对那部分数据没有发言权,我不是说在服务器上。我是说在你的服务中,在你的angular应用程序中。通常,您不会在控制器中发出ajax请求。相反,您将使用一个服务(look up angular.service()),因此它仍然在您的控制下执行此操作。您是否有理由在ng repeat中执行此操作?这可以在响应返回时调用远程api的服务中完成吗?看起来,如果您需要这种特定格式的数据,您可能需要这种格式的数据。如果你做一次这样的转换,它会更干净。然后,您的视图控制器都不需要知道该格式不是soundmanager2格式。@mcgraphix我希望我可以在远程服务中这样做,但不幸的是,我无法控制响应格式。你是对的,这样做完全有道理,但我对那部分数据没有发言权,我不是说在服务器上。我是说在你的服务中,在你的angular应用程序中。通常,您不会在控制器中发出ajax请求。相反,您将使用一个服务(look up angular.service()),因此它仍在您的控制范围内。getFullModels()是控制器作用域(即$scope)的一部分吗?getFullModels()是控制器作用域(即$scope)的一部分吗?