मैं तर्क-कम temlpates के पीछे अवधारणा को समझने की कोशिश कर रहा हूं, लेकिन मैं खुद को एक दीवार मार रहा हूं।लॉजिक-कम टेम्पलेट इंजन में एनएवी-बार कैसे बनाना है जैसे मूंछ
मैं एक साधारण नेविगेशन बार को लागू करना चाहता हूं, उदा। प्रत्येक पृष्ठ के शीर्ष पर "होम, के बारे में, संपर्क करें" लिंक, और "वर्तमान" को एक अलग वर्ग (मैं बूटस्ट्रैप का उपयोग कर रहा हूं) के साथ हाइलाइट किया जाना चाहिए। लेकिन मैं इसे एक समझदार फैशन में कैसे कर सकता हूं? अब तक मेरे पास है:
- नौसेना को प्रत्येक टेम्पलेट पर ले जाएं, और पूरी चीज को कॉपी करें (DRY, बदसूरत नहीं)।
- मानों की बजाय कुंजी का उपयोग करें, यानी
<a href="/" {{#on_home_page}}class="active"{{/on_home_page}}>Home</a>
के साथ। यह बेहतर है, लेकिन अभी भी कष्टप्रद है कि मुझे 1-चरणीय डेटा रखने के लिए एन चर बनाना है। - नियंत्रक में नेविगेशन बनाएं, यानी
{ 'Home': {link: '/', active: false}, 'About: {link: '/about', active: true} }
या इसी तरह से पास करें। मैं इसे नापसंद करता हूं क्योंकि इसमें तर्क-कम टेम्पलेट्स की विपरीत समस्या है। अब मेरे पास HTML-ful नियंत्रक हैं ...
उपर्युक्त विकल्पों को देखते हुए, मुझे सबसे अच्छा (2) पसंद है। लेकिन क्या मैं पसंद करेंगे किसी तरह की जांच के लिए एक एकल चर, जैसे है:
// controller
render('about', {active: 'about'});
render('home', {active: 'home'});
// mustache nav
<a href="/" {{#if active == 'home'}}class="active"{{/if}}>Home</a>
<a href="/about" {{#if active == 'about'}}class="active"{{/if}}>About</a>
मुझे यकीन है कि यह ऊपर सभी मूंछें विशेषज्ञों के लिए समय आता है कर रहा हूँ --- क्या से निपटने के लिए सबसे अच्छा तरीका है यह?
मैंने इस पर ठोकर खाई और ध्यान दिया कि फ़ंक्शन केवल पैरा को वापस नहीं करेगा। आपको वास्तव में एक कॉलबैक प्रदान करने की आवश्यकता है जो परम प्रदान करता है। आलसी पहेली: http://jsfiddle.net/dN4Z8/ – danwit
वास्तव में यह {{#selected_item}} घर {{/ select_item}} 'होना चाहिए, लेकिन मुझे दुख की बात है कि अपडेट करने के लिए 4 अन्य वर्ण नहीं मिल पाए मूल पोस्ट ... आह ठीक है। अच्छा कार्य! – BigBlueHat