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
Angularjs 对多维数组使用orderBy on ng repeat_Angularjs_Multidimensional Array_Angular Filters_Angularjs Orderby - Fatal编程技术网

Angularjs 对多维数组使用orderBy on ng repeat

Angularjs 对多维数组使用orderBy on ng repeat,angularjs,multidimensional-array,angular-filters,angularjs-orderby,Angularjs,Multidimensional Array,Angular Filters,Angularjs Orderby,我有一个动态数据模型通过websocket传入,如下所示: var results = [ [ {name:'A'}, {price: 0.00} ], [ {name:'C'}, {price: 0.00} ], ] 我正在使用我的ng repeat,如下所示: ng-repeat="result in results" 每当我需要访问结果数组中的一个数组时,我都会执行以下操作: result[

我有一个动态数据模型通过websocket传入,如下所示:

var results = [
    [
        {name:'A'},
        {price: 0.00}
    ],
    [
        {name:'C'},
        {price: 0.00}
    ],
]
我正在使用我的ng repeat,如下所示:

ng-repeat="result in results"
每当我需要访问结果数组中的一个数组时,我都会执行以下操作:

result[0].name
我遇到的问题是,ngRepeat上的orderBy筛选器似乎不允许我这样做:

ng-repeat="result in results | orderBy: result[0].name
也许这是对Angular如何工作的一个基本误解,但我不明白为什么这不起作用。是语法不正确,还是因为我的数据模型是动态的?我应该设置$scope.$apply吗

我尝试过使用引号,并尝试在最初解析数据的函数中设置谓词,将谓词设置为result.name的每个实例,但这也不起作用


非常感谢您的帮助。

这个问题非常有趣。由于orderBy将使用当前对象,因此必须相对地分配order字符串

这将实现以下目的:

ng-repeat="result in results | orderBy: 'this[0].name'

阅读
orderBy
文档,它们会解释您是什么asking@tymeJV:问题是给定的数组包含数组,而不是单个对象。@HimmetAvsar--Ahh,我第一眼就看不出来。太棒了!非常感谢@HimmetAvsar,就是这样。