2014-10-09 6 views
9

मैं कोणीय के लिए नया हूँ और निम्न कार्य करना चाहते:AngularJS ngRepeat: यहां तक ​​कि अजीब तत्वों को अलग करने के लिए कैसे?

<tr data-ng-repeat="element in awesomeThings"> 
<div ng-if="$index %2 == 0"> 
    <td class="even"> 
     <a href="#"> 
      {{element}} 
     </a> 
    </td> 
</div> 
<div ng-if="$index %2 != 0"> 
    <td class="odd"> 
     <a href="#"> 
      {{element}} 
     </a> 
    </td> 
</div> 
</tr> 
ऊपर कोड के लिए

, दोनों ng-if गुजर रहा है। मैं गलती कर रहा हूँ?

+0

सूचकांक कोणीय – Pascalz

+0

कोई भाग्य के साथ $ सूचकांक है। इसका एक ही परिणाम – batman

+1

https://docs.angularjs.org/api/ng/directive/ngClassOdd –

उत्तर

16

$even और $odd गुणों का प्रयास करें। documentation देखें।

तरह:

<tr ng-repeat="element in awesomeThings"> 
     <span ng-class="$even ? 'odd' : 'even'">{{element}}</span> 
    </tr> 

एक और बनाया:

<tr data-ng-repeat="element in awesomeThings"> 
<div ng-if="$even"> 
    <td class="even"> 
     <a href="#"> 
      {{element}} 
     </a> 
    </td> 
</div> 
<div ng-if="$odd"> 
    <td class="odd"> 
     <a href="#"> 
      {{element}} 
     </a> 
    </td> 
</div> 
</tr> 
+0

कोई भाग्य नहीं। यह वही है :( – batman

+0

सुनिश्चित करें कि आप Angular.js 1.2.0 या नए का उपयोग कर रहे हैं। – gligoran

9

आप एनजी-अगर प्रयोग करने में क्या यह एक सम या विषम तत्व है की जांच करने के कि कार्यक्षमता में निर्मित किया गया है पहले से ही की जरूरत नहीं है -इन सुविधा ng-class है जो आपको सशर्त रूप से एक सीएसएस वर्ग सेट करने के लिए कई विकल्प देती है, यहां मैं टर्नरी संस्करण का उपयोग कर रहा हूं लेकिन इसका उपयोग करने के अन्य तरीके भी हैं।

यहाँ यहाँ एक working example

इसके अलावा, एक good article समझा ng-class अधिक के बारे में

+1

मेरे लिए काम करता है, लेकिन मुझे वास्तव में कथन नहीं मिलता है। मुझे लगता है कि "$ भी" कथन है, लेकिन पहली पंक्ति 'विषम' क्यों होती है, जबकि कथन '$ भी' है? (इस प्रश्न को समझाने में कठिनाई ढूँढना) –

+0

@ जोरीस डेकर्रेकर क्योंकि कथन होना चाहिए: "$ भी? 'यहां तक ​​कि': अजीब ' "(जिसका अर्थ है कि, यहां तक ​​कि कक्षा भी डाल दें अन्यथा अजीब डाल दें)। बेशक आप अजीब होने पर भी कक्षा का उपयोग कर सकते हैं लेकिन मैं इस तथ्य से सहमत हूं कि उत्तर थोड़ा उलझन में हो सकता है। –

0

सीएसएस में इस प्रयास करें:

tr:nth-child(even) { 
    background: #CCC 
} 

tr:nth-child(odd) { 
    background: #FFF 
} 

आप पहली बार आइटम की शैली निर्धारित कर सकते हैं:

tr:first-child { 
    background: #84ace6 
} 
संबंधित मुद्दे