Comment filtrer (clé, valeur) avec ng-repeat dans AngularJs?
Je suis en train de faire quelque chose comme :
<div ng-controller="TestCtrl">
<div ng-repeat="(k,v) in items | filter:hasSecurityId">
{{k}} {{v.pos}}
</div>
</div>
AngularJs Partie:
function TestCtrl($scope)
{
$scope.items = {
'A2F0C7':{'secId':'12345', 'pos':'a20'},
'C8B3D1':{'pos':'b10'}
};
$scope.hasSecurityId = function(k,v)
{
return v.hasOwnProperty('secId');
}
}
Mais de toute façon, il me montre tous les éléments. Comment puis-je filtrer (clé,valeur) ?
- veuillez fournir des exemples de données pour les éléments. Ou de nous donner un violon 😉
- Ce n'est pas une façon de créer un filtre de regarder les documentation, et en tant que Robin a dit, un exemple s'il vous plaît.
- J'ai déjà donné un exemple complet et je sais comment utiliser les filtres. Je suis juste de se demander "comment utiliser le filtre avec de l' (clé,valeur)".
- index et le comte devrait être disponible dans le champ d'application iirc
Vous devez vous connecter pour publier un commentaire.
Angulaire les filtres ne peuvent être appliquées à des tableaux et non des objets, de l'angulaire de l'API -
Vous avez deux options ici:
1) déplacer
$scope.items
d'un tableau ou d' -2) pré-filtre de la
ng-repeat
éléments, comme ceci:Et sur le Contrôleur:
jsfiddle: http://jsfiddle.net/bmleite/WA2BE/
Ma solution serait de créer des filtres personnalisés et de les utiliser:
Et en html:
Vous pouvez également utiliser
ng-repeat
avecng-if
:Ou tout simplement utiliser
Voir la solution mise à jour ici:
http://jsfiddle.net/RFontana/WA2BE/93/
ng-if
au lieuVous pouvez simplement utiliser angulaire.filtre module, et ensuite, vous pourrez filtrer, même par les propriétés imbriquées.
voir: jsbin
2 Exemples:
JS:
HTML:
angular.filter
est pas un core angulaire module et vous êtes l'auteur.toArray
filtre n'est pas présent. Est-il d'un remplacement, parce que lefilter
filtre ne permet toujours pas d'objets?Il est un peu tard, mais j'ai regardé pour l'e filtre semblable et s'est terminé en utilisant quelque chose comme ceci:
J'ai fait un peu plus d'un filtre générique que j'ai utilisé dans plusieurs projets déjà:
HTML:
JS:
Bien que cette question est assez vieille, je voudrais partager ma solution angulaire 1 les développeurs. Le point est de réutiliser l'original filtre angulaire, mais de façon transparente la réussite de tous les objets dans un tableau.
l'utiliser comme ceci:
ici est un plunker