尽量减少代码(避免编写排序函数)。我有一个可排序的简单数据表。
此示例中的问题是“分数”没有按数字排序。用户“Julie”的得分最低为“9.12”,但在排序时,它似乎是按词汇排序的。
这是代码片段和相关的 plunker。
<pre>Sorting predicate = {{predicate}}; reverse = {{reverse}}</pre>
<hr/>
<table class="user">
<tr>
<th><a href="" ng-click="predicate = 'name'; reverse=false">Name</a>
(<a href="" ng-click="predicate = '-name'; reverse=false">^</a>)</th>
<th><a href="" ng-click="predicate = 'score'; reverse=!reverse">user score</a></th>
<th><a href="" ng-click="predicate = 'age'; reverse=!reverse">Age</a></th>
</tr>
<tr ng-repeat="user in users | orderBy:predicate:reverse">
<td>{{user.name}}</td>
<td>{{user.score}}</td>
<td>{{user.age}}</td>
</tr>
</table>