Ich habe ein einfaches Objekt in einem Controller, das manchmal leer sein kann ({}
).Testen, ob ein Objekt ein leeres Objekt in einer AngularJS-Vorlage ist
Ich möchte einige DOM-Elemente in der entsprechenden Vorlage ausblenden oder anzeigen, wenn das Objekt leer ist oder nicht.
Ich versuchte es mit einer einfachen <div ng-if="vm.testObject">
zu tun, aber wenn vm.testObject === {}
es true
im ng-if
betrachtet wird.
Gibt es eine einfache Möglichkeit, nach einem leeren Objekt in der Vorlage zu suchen? Vorzugsweise ohne neue Variablen zum Scope hinzuzufügen.
Hier ist ein funktionierendes Plunker: http://plnkr.co/edit/Qed2MKmuedcktGGqUNi0?p=preview
Wie über eine Funktion, z. B. 'vm.isEmpty = Funktion (obj) {return Object.keys (obj) .length === 0; } '. Dann können Sie 'ng-if =" vm.isEmpty (vm.testObject) "verwenden. – Phil