2017-09-04 1 views
0

Ich versuche, ein JSON-Array in meiner Ansicht zu durchlaufen, aber ich möchte nur die Schlüssel anzeigen, deren Werte nicht leere Zeichenfolgen sind.So zeigen Sie nur nicht leere Zeichenfolgewerte aus einem Array an

design: 
{name: "ux", value: "3", $$hashKey: "object:5198"} 
{name: "graphic", value: "", $$hashKey: "object:5199"} 
{name: "concept", value: "4", $$hashKey: "object:5200"} 
{name: "photoshop", value: "", $$hashKey: "object:5201"} 
{name: "illustrator", value: "5", $$hashKey: "object:5202"} 
{name: "inDesign", value: ""} 
{name: "afterEffects", value: ""} 
{name: "premierePro", value: "1"} 

Wie würde ich nur die Schlüssel des Arrays erhalten, während durch das Array iterieren und zeigen nur diejenigen, die einen echten Wert haben.

Der aktuelle Code, den ich habe, ist:

<div class="six columns"> 
         <div ng-repeat="skill in employeeDetails.design | limitTo:5:0 | filter:{value:'! '}"> 
          {{ skill.name | capitalize }} {{ skill.value }} 
         </div> 
        </div> 

Jede Hilfe wäre sehr geschätzt!

+1

Verwenden Sie einfach | Filter: {Wert: '!! '} – Vivz

Antwort

1

Sie können ng-if in diesem Fall benutzen:

<div class="six columns"> 
    <div ng-repeat="skill in employeeDetails.design | limitTo:5:0" ng-if="skill.value !== '' "> 
      {{ skill.name | capitalize }} {{ skill.value }} 
     </div> 
</div> 

oder ändern Sie Ihre filter

<div class="six columns"> 
     <div ng-repeat="skill in employeeDetails.design | limitTo:5:0 | filter:{value:'!! '}" ng-if="skill.value !== '' "> 
       {{ skill.name | capitalize }} {{ skill.value }} 
      </div> 
    </div> 
+0

Danke, das hat funktioniert! Ich dachte darüber nach, indem ich einen Filter im Modul erstellte. – qasimalbaqali

+0

Bitte akzeptieren Sie die Antwort, da sie für andere Besucher nützlich ist. –

+0

Wird tun, es hat ein Zeitlimit tho :) – qasimalbaqali

Verwandte Themen