私は<select>
のボックスをいくつかのオブジェクトで設定しています。この例では、チームによってグループ化し、group by
を使用します。ただし、選手チームが変更された場合、グループは更新されません。ng-optionsディレクティブが更新されていません
これは、マークアップです:
<select ng-options="player.name group by player.team for player in players"></select>
<button ng-click="change();">Change team name</button>
とコントローラ:
.controller('MainController', function($scope) {
$scope.players = [{
name: 'Player one',
team: 'Denmark'
},
{
name: 'Player two',
team: 'Denmark'
},
{
name: 'Player three',
team: 'England'
},
{
name: 'Player four',
team: 'England'
},
{
name: 'Player five',
team: 'England'
}
];
$scope.change = function() {
$scope.players[0].team = 'Sweden';
};
Here's私の問題を実証JSFiddle。
変更されたときにチーム名が更新されないのはなぜですか?
'track by player.team'を – sp00m
@ sp00m 'track by player.team'を使用すると、選択が中断されます。[this(http:/ /)]を見ると、' ngOptions'式の終わりはあなたの問題を解決するようですが、 /jsfiddle.net/fhyc 96rx/2 /)を選択してPlayer 3を選択しようとすると、Player 5が選択されます。 –