我正在尝试使用 angularorderBy
对多个字段进行排序,但出现语法错误:
语法错误,无法识别的表达式: div[ng-repeat='r in vm.GetRequests() | 过滤器:vm.SearchText | orderBy:['LastName','FirstName']']
似乎出现了额外的标志']'
,但我在 html 中没有
html 看起来像:
<div ng-repeat="r in vm.GetRequests() | filter: vm.SearchText |orderBy:'RequestedOn'| orderBy:['LastName','FirstName']">
{{r.LastName}} : {{r.FirstName}}
</div>
该函数GetRequests()
返回一个对象数组,如下所示:
[{FirstName:"Test1", LastName:"First"},{FirstName:"Test2",LastName:"Second"},{FirstName:"Test3",LastName:"Third"}]
谁能帮我解决这个问题?
更改 HTM - 删除 orderBy: 'RequestedOn'
<div ng-repeat="r in vm.GetRequests() | filter: vm.SearchText | orderBy:['LastName','FirstName']">
{{r.LastName}} : {{r.FirstName}}
</div>
但我仍然收到语法错误:
Uncaught Error: Syntax error, unrecognized expression: div[ng-repeat='r in vm.GetRequests() | filter: vm.SearchText | orderBy:['LastName','FirstName']']
更新
语法似乎来自浏览器链接,因为当我收到错误时,订单就生效了。并建议将所有订单属性放在一个数组中
非常感谢大家的投入,特别感谢 RishiPrakash :)