作者:Fuckkkkkkkkkk7777_352 | 来源:互联网 | 2023-05-25 16:58
我有一个动态数据模型通过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 somewhere?
我尝试过引号,并且我已经尝试在最初解析数据的函数中设置谓词,将结果设置为result.name的每个实例,但这也不起作用.
很感谢任何形式的帮助.
1> Himmet Avsar..:
这个问题非常有趣.由于orderBy将使用当前对象,因此您必须相对分配订单字符串.
这样就可以了:
ng-repeat="result in results | orderBy: 'this[0].name'