Je ne veux pas utiliser la boucle for pour convertir un objet en tableau comme celui-ci! Si doublé le processus et ralentir les performances de l'application (j'utilise Ionic2 et TypeScript, avec Firebase)
for (let key in data) {array.Push (value); }
Existe-t-il une solution pour itérer l'objet lui-même (montré dans l'image ci-jointe) en utilisant * ngFor.
Ou je peux convertir cet objet (montré dans l'image ci-jointe) en tableau, de sorte qu'il peut être itérable dans * ngFor.
Vous pouvez utiliser Object.keys (obj) pour obtenir des index nommés. Cela renverra une structure de tableau que vous pouvez utiliser/personnaliser davantage. Un exemple d'utilisation pour itérer sur les valeurs d'objets peut ressembler à ceci
var persons = {
john: { age: 23, year:2010},
jack: { age: 22, year:2011},
jenny: { age: 21, year:2012}
}
Obtenir un itérateur
var resultArray = Object.keys(persons).map(function(personNamedIndex){
let person = persons[personNamedIndex];
// do something with person
return person;
});
// you have resultArray having iterated objects
Depuis Angular 6, il y a maintenant un opérateur de canal de valeur clé. Simple, procédez comme suit:
*ngFor="for item in objectList | keyvalue"
item.key # refers to the keys (134, 135...) in your example
item.value # refers to the object for each key