2012-05-17 4 views
20

क्या इको टेम्पलेट इंजन का उपयोग कर वर्तमान लूप इंडेक्स प्राप्त करना संभव है?एक इको टेम्पलेट में लूप इंडेक्स प्राप्त करना

Jinja2 में उदाहरण के लिए आप

{% for var in array %} 
    {{ loop.index0 }} 
{% endfor %} 

कर सकते हैं यदि नहीं वहाँ सूचकांक में होने का एक और अधिक मुहावरेदार तरीका है?

उत्तर

40
से

CoffeeScript website:

# Fine five course dining. 
courses = ['greens', 'caviar', 'truffles', 'roast', 'cake'] 
menu i + 1, dish for dish, i in courses 

के रूप में भी

courses = ['greens', 'caviar', 'truffles', 'roast', 'cake'] 
for dish, i in courses 
    menu i + 1, dish 

पर्यावरण टेम्पलेट के लिए लिखा जा सकता है, कुछ इस तरह यह करना चाहिए:

<% for val, idx in @varName: %> 
<span>The index is <%= idx %> and value is <%= val %></span> 
<% end %> 
+0

ठीक है लेकिन आप एक पर्यावरण टेम्पलेट के संदर्भ में ऐसा कैसे करेंगे। –

+0

बहुत बढ़िया। धन्यवाद! –

+0

कोई समस्या नहीं है। सौभाग्य। – Sandro

3

हाँ, बस का उपयोग कर कॉफीस्क्रिप्ट के लिए (लेकिन अतिरिक्त : का ख्याल रखना):

<% for thing, i in @things: %> 
    <%= i %>: <%= thing %> 
<% end %> 

jsFiddle example

+0

क्या आप वाकई हैं: @things के बाद सही है? यह इसके बिना मेरे लिए काम करता है ... – Puce

+0

@ इसे पिस करें [आवश्यक होना प्रतीत होता है] (https://github.com/sstephenson/eco#a-note-about-whitespace)। क्या आप एक अलग इको संस्करण का उपयोग कर रहे हैं? उत्तर से जुड़े जेएसफ़िल्ड उदाहरण से कोलन को हटाते समय एक त्रुटि उठाई जाती है: 'त्रुटि: पंक्ति 3 पर पार्स त्रुटि: अप्रत्याशित dedent'। – epidemian

+0

क्षमा करें आप सही हैं, मैं एक ही टेम्पलेट इंजन का उपयोग नहीं कर रहा हूं। – Puce

संबंधित मुद्दे