AngularJS orderBy不适用于ngOptions中的track by?

AngularJS orderBy不适用于ngOptions中的track by?,angularjs,Angularjs,我正在尝试使用跟踪方式对ngOptions进行排序 这是我的模板 <select ng-model="asd" ng-options="user.id as user.name for user in users track by user.id | orderBy: 'name'"> 我写了一篇文章来证明这一点。问题是排序不起作用。我是否应该编写自定义筛选器?为了使用带筛选器的跟踪,需要在筛选器之后添加track by表达式 请尝试以下方法: user.id as user.na

我正在尝试使用
跟踪方式对
ngOptions
进行排序

这是我的模板

<select ng-model="asd" ng-options="user.id as user.name for user in users track by user.id | orderBy: 'name'">

我写了一篇文章来证明这一点。问题是排序不起作用。我是否应该编写自定义筛选器?

为了使用带筛选器的跟踪,需要在筛选器之后添加
track by
表达式

请尝试以下方法:

user.id as user.name for user in users | orderBy: 'name' track by user.id
相关文档在“参数”部分中提到了这一点,具体如下:

在指定跟踪表达式之前,应将筛选器应用于表达式

例如:items中的item | filter:searchText track by item.id是一种模式,可用于将筛选器与跟踪表达式一起应用于项目


非常感谢您指出这一点!有一个问题,当您想使用orderby函数而不是属性时,情况如何?
user.id as user.name for user in users | orderBy: 'name' track by user.id