это мой объект
Я пытаюсь отобразить количество изображений в этом массиве, но я не могу понять, почему это не работает, и это заставляет меня сходить с ума!
<ion-item ng-click="openModal(value.$id)" ng-repeat="value in items | orderBy: '-$id' track by $index "
class="item item-avatar" style="text-align:left">
<img ng-if="value['image'].image" ng-src="data:image/jpeg;base64,{{value['image'].image}}">
<img ng-if="!value['image'].image" ng-src="img/shelter.png">
<h2>{{value.nom}} </h2>
<p>{{value.adresse}}</p>
<p>{{items[0].images.length }} Photographie(s)</p>
</ion-item>
Как я могу отобразить длину этого объекта "изображений", пожалуйста? Чего не хватает?
EDIT: {"-KO5d2zxMY9wZd9Vp64s":true} Photographie(s)
отображается, когда я <p>{{value.images }} Photographie(s)</p>
Хорошо, поэтому я понял это!
Я создал другой фильтр в app.js
.filter('keylength', function(){
return function(input){
if(!angular.isObject(input)){
return '0';
}
return Object.keys(input).length;
}
})
и, на мой взгляд,
<p>{{ value.images | keylength }} Photographie(s)</p>
И это отлично :) Большое спасибо за вашу помощь!
Почему бы не использовать
$scope.images_length = Object.keys(items[0].images).length;
function MyCtrl($scope) {
$scope.items = {};
$scope.items = [{"images": {"item1": "1", "item2": "2"}}];
$scope.images_length = Object.keys($scope.items[0].images).length
}
И затем, на ваш взгляд,
<div ng-app="">
<div ng-controller="MyCtrl">
{{images_length}}
</div>
</div>
Сценарий: http://fiddle.jshell.net/htt3x5Lc/
images
есть несколько объектов, которые должны быть показаны на отдельномion-item
?