2012-08-02 16 views
23

मेरे पास एक backbone.js/underscore.js टेम्पलेट है जो मैं प्रतिपादन के लिए रीढ़ की हड्डी के दृश्य में भोजन कर रहा हूं। व्यू को एक मॉडल पास किया गया है जिसमें ऑब्जेक्ट्स posts ऑब्जेक्ट्स शामिल हैं (जिन्हें मैं टेम्पलेट में post पर कॉल करता हूं)।रीढ़ की हड्डी/अंडरस्कोर के टेम्पलेट्स में लूप का उपयोग

समस्या: मैं सरणी posts के सभी तत्वों को लूप करने के लिए प्रयास करते हैं, मैं एक त्रुटि Uncaught SyntaxError: Unexpected token) हो और रीढ़ की हड्डी देखें का कोड template: _.template($('#tpl_SetView').html()) में एक पंक्ति संदर्भित करता है।

क्या मैं लूप गलत तरीके से कर रहा हूं जो इस त्रुटि का कारण बन रहा है?

खाका कोड

<script type="text/template" id="tpl_SetView"> 
    <div class="row_4"> 
     <div class="photo_container"> 
      <div class="set_cover"> 
       <img src="/<%= posts[0].thumb_subpath %><%= posts[0].img_filename %>" width=240 /> 
      </div> 
      <div class="set_thumbs"> 
       <%= _.each(posts, function(post) { %> 
        <img src="<%= post.thumb_subpath %><%= posts.img_filename %>" width=55 /> 
       <%= }); %> 
      </div> 
     </div> 
    </div> 
</script> 
+2

मुझे लगता है कि नए मॉडल और विचारों के लिए कोड को व्यवस्थित करने के लिए बेहतर है। अच्छे अभ्यास में टेम्पलेट्स के माध्यम से लूपिंग – chchrist

+0

मुझे उत्सुकता है कि आप क्यों सोचते हैं कि टेम्पलेट के माध्यम से लूपिंग खराब अभ्यास है। मैंने जेम्स वुड्रफ द्वारा चयनित विकल्पों की सूची बनाने के उपयोग के लिए नीचे दिए गए उत्तर को लागू किया है (जो स्थिति के आधार पर भिन्न होता है) और ऐसा लगता है कि अलग दृश्य बनाने के बजाय विकल्पों की सरणी के माध्यम से बस लूप करना बहुत आसान है जिसे 'selectOption' कहा जाता है या जो कुछ भी और फिर इसे