ng-repeat で表示されるアイテムのリストが与えられた場合、列の値が変更されるたびに追加のものを表示したいと思います。
var myApp = angular.module('myApp', []);
function MyCtrl($scope) {
$scope.cards = [
{suit: 'Hearts', value: 7},
{suit: 'Clubs', value: 7},
{suit: 'Spades', value: 7},
{suit: 'Diamonds', value: 7},
{suit: 'Hearts', value: 8},
{suit: 'Clubs', value: 8},
{suit: 'Spades', value: 8},
{suit: 'Diamonds', value: 8},
{suit: 'Hearts', value: 9},
{suit: 'Clubs', value: 9},
{suit: 'Spades', value: 9},
{suit: 'Diamonds', value: 9} ];
$scope.myValueFunction = function(card) {
return [card.suit, card.value];
};
}
次の結果が必要です。
The Clubs
7
8
9
The Diamonds
7
8
9
The Hearts
7
8
9
The Spades
7
8
9
私はそのようなHTMLを持っていることを好みます:
<div ng-controller="MyCtrl">
<div ng-repeat="card in cards | orderBy:myValueFunction">
<div break-on-column="card.suit">The {{card.suit}}</div>
<div>{{card.value}}</div>
</div>
</div>
もちろん、実際の問題には多くの列 (2 つだけでなく)、いくつかのブレーク列 (例: break-on-column="col1,col2,col3") が含まれており、ブレーク列は固定されていません (つまり、実行時のユーザー)。