How to loop over object properties with ngFor in Angular
In Angular 6.1 the KeyValuePipe was introduced which allows you to iterate object properties:
<div *ngFor="let item of object | keyvalue">
{{item.key}}:{{item.value}}
</div>
Docs: https://angular.io/api/common/KeyValuePipe
I don't know if this is safe, but for these simple cases i don't like the pipe solution, so i usually use:
<div *ngFor="let k of objectKeys(yourObject)">
{{yourObject[k].color}}
</div>
and in the controller:
objectKeys(obj) {
return Object.keys(obj);
}
This is a quite frequent case, i don't understand why there isn't a standard implementation for this like in Angular.js 1.x