我有一组显示一定数量的磁贴,具体取决于用户选择的选项。我现在想通过显示的任何数字来实现排序。下面的代码显示了我是如何实现的(通过在父卡范围内获取/设置一个值)。现在,由于orderBy函数采用一个字符串,因此我尝试在卡范围内设置一个名为curOptionValue的变量并以此进行排序,但它似乎不起作用。因此,问题就变成了,如何创建自定义排序功能?<div ng-controller="aggViewport" ><div class="btn-group" > <button ng-click="setOption(opt.name)" ng-repeat="opt in optList" class="btn active">{{opt.name}}</button></div><div id="container" iso-grid width="500px" height="500px"> <div ng-repeat="card in cards" class="item {{card.class}}" ng-controller="aggCardController"> <table width="100%"> <tr> <td align="center"> <h4>{{card.name}}</h4> </td> </tr> <tr> <td align="center"><h2>{{getOption()}}</h2></td> </tr> </table> </div></div>和控制器:module.controller('aggViewport',['$scope','$location',function($scope,$location) { $scope.cards = [ {name: card1, values: {opt1: 9, opt2: 10}}, {name: card1, values: {opt1: 9, opt2: 10}} ]; $scope.option = "opt1"; $scope.setOption = function(val){ $scope.option = val; }}]);module.controller('aggCardController',['$scope',function($scope){ $scope.getOption = function(){ return $scope.card.values[$scope.option]; }}]);
3 回答
桃花长相依
TA贡献1860条经验 获得超8个赞
要将方向与orderBy函数一起包括:
ng-repeat="card in cards | orderBy:myOrderbyFunction():defaultSortDirection"
哪里
defaultSortDirection = 0; // 0 = Ascending, 1 = Descending
- 3 回答
- 0 关注
- 1309 浏览
添加回答
举报
0/150
提交
取消