2014-10-27 45 views
0

我有一个json包含源自我的Symfony控制器的对象。ngRepeat似乎使用随机顺序而不是命令

我需要循环的对象,像这样

<li data-ng-repeat="course in courses"></li> 

在我的应用程序控制器我这样做

$scope.courses = {{ courses | serialize('json', serialization_context().setGroups(['identification', 'courseListing', 'portalOverview'])) | raw }}; 

的顺序是好的,当我检查的范围变量“课程”与NG -inspect浏览器插件。

截图:http://i.imgur.com/pKy00uo.png

但还是循环似乎有点随意。最后一个对象继续放在第二个孩子后面。

任何想法?需要更多信息,请问。谢谢!

+0

那是什么'$ scope.courses = {{courses | serialize('json',serialization_context()。setGroups(['identification','courseListing','PortalOverview']))|原始}};'?为什么模型赋值中的花括号? – maurycy 2014-10-27 11:41:13

+0

我使用树枝作为模板引擎。但不用担心,因为您可以在所提供的屏幕截图中看到阵列“课程”已正确收到。顺序与我的php变量{{courses |一些树枝过滤参数}}。 – axelvnk 2014-10-27 11:45:58

+0

你能记录数组吗,也许你正在使用它自己的命令数组的工具?我从来没有遇到错误的顺序ng-repear – maurycy 2014-10-27 11:53:20

回答

0

好的,所以看起来Angular在给ng-repeat时不能很好地处理对象。 我将对象的对象转换为对象数组,并且对象按正确的顺序呈现。

var arrCourses = []; 
$.each($scope.courses, function(index, obj){ 
    arrCourses.push(obj); 
}); 
$scope.courses = arrCourses;