Angular で Metro タイル タイプのグリッドを作成しようとしています。これを実現するには、各タイルを異なる色にしたいと考えています。したがって、私の行動計画は、ループ内でランダムに色を選択する関数を作成することでした ( を使用ng-repeat
)。これが私がこれまでに持っているものです....
<div class={{RandomColourClass()}} ng-repeat="stockRecord in GridStockRecords | filter:searchText">
<div >
<h6>{{stockRecord.ProductGroupName}}</h6>
</div>
</div>
ご覧のとおり、RandomColourClass という関数でクラス名を設定しています。これが JS ビットです。
$scope.TileColours = [{colour:'thumbnail tile tile-blue'},{colour:'thumbnail tile tile-green'},{colour:'thumbnail tile tile-red'}];
$scope.RandomColourClass = function(){
var randomColour = $scope.TileColours[Math.floor(Math.random() * $scope.TileColours.length)];
return randomColour.colour.toString();
};
これはすべて正常に機能し、タイルの色は異なりますが、次のエラーが発生し続けます
エラー: 10 回の $digest() 反復に達しました。中止します!」。
この問題に関する他の投稿を見てきましたが、機能させるために何を変更する必要があるのか わかりません!? どんな助けや指示も大歓迎です:)