打者の中のバッターだけを表示したいと思って、インデックス0
でカウントしたいと思っています。angularJSを使用してjsonからオブジェクト配列のエンティティを表示およびカウントする方法は?
すなわちid = 1001
type = regular
、カウント "4"
打者の中のバッターだけを表示したいと思って、インデックス0
でカウントしたいと思っています。angularJSを使用してjsonからオブジェクト配列のエンティティを表示およびカウントする方法は?
すなわちid = 1001
type = regular
、カウント "4"
使用のアレイフィルタ方式でなければなりません。..
var getBatter1001 = (item) => { return item.batters.batter.filter((x) => {x.id === '1001'}); }
var batter1001 = $scope.myData.filter(getBatter1001);
console.log('Count of objects with batter id 1001: '+batter1001.length); // Logs 3
たぶんthis更新JSFiddleは、あなたのアイデアを与えるだろう。コントローラで
HTML
<div ng-app="myApp" ng-controller="customersCtrl">
<ul ng-repeat="x in myData">
<li ng-repeat = "batter in x.batters.batter | filter: {'id': 1001, 'type': 'Regular'}">
{{ batter.id }} - {{ batter.type }}
</li>
</ul>
{{countBatters(1001, 'Regular')}}
</div>
追加機能:
$scope.countBatters = function(id, type) {
return $scope.myData.filter(function(obj) {
var batter = obj.batters.batter[0];
return batter.id == id && batter.type == type
}).length;
}
あり、これは、すべての打者の最初のIDとタイプが表示されますが、私は言いますid = 0001の1番バッターからのみ必要 –
ここではフィドルhttps://jsfiddle.net/8u0zwwud/ –