में कई अलग-अलग मार्गों के लिए लिंक 'सक्रिय' कैसे सेट करें, मैं एक से अधिक मार्गों के लिए एम्बर लिंक-हेल्पर पर 'सक्रिय' कक्षा सेट करना चाहता हूं, जहां मार्ग नेस्टेड नहीं हैं। यानी। अगर मेरे पास रूट 1 का लिंक है तो मैं वर्तमान रूट रूट 1 या रूट 2 होने पर सक्रिय होना चाहता हूं।एम्बरजेएस
कुछ है, जैसे:
{{#link-to 'route1' currentWhen="route1, route2"}}Things-N-Stuff{{/link-to}}
मेरा अगला आदर्श परिदृश्य सेट किया गया है (या लगता है) एक बूलियन जब मार्ग सक्रिय है और उसके बाद की तरह कुछ कार्य करें:
{{#link-to 'route1' class="isRoute1:active isRoute2:active"}}Not-as-good{{/link-to}}
लेकिन मैं डी इसे मुफ्त में उठाओ। शायद एक डिफ़ॉल्ट isRoutename बूलियन है जो अभी तक दस्तावेज़ों में नहीं है ...?
अभी तक कोई जवाब नहीं है। App.ApplicaitonController
isThingsLinkActive: function(){
return ['things.index','thing.index','stuff.index'].contains(this.get('currentPath'));
}.property('currentPath'),
में
{{#linkTo "things" tagName="li" href=false}}
<a {{bindAttr href="view.href"}} {{bindAttr class="isThingsLinkActive:active"}}>Things</a>
{{/linkTo}}
और फिर इसका मतलब है कि मैं एक 'अतिभारित' क्लिक के लिए मेरे एप्लिकेशन नियंत्रक में thins की तरह कुछ करने की जरूरत है: मैं यह कर समाप्त हो गया। क्या यह एम्बर द्वारा उत्पन्न डिफ़ॉल्ट झंडे/विशेषताओं का उपयोग करके टेम्पलेट में इसे पूरी तरह से कैप्चर करने के लिए क्लीनर नहीं होगा? मैं एक और अधिक सुरुचिपूर्ण समाधान के लिए खुला हूँ ... कोई भी?
संभव डुप्लिकेट की [EmberJS सेट एकाधिक बार पर गुण] (http://stackoverflow.com/questions/8752805/emberjs-set-multiple-properties-at-once) –
@PaulSweatte मुझे नहीं लगता कि ये बिल्कुल संबंधित हैं। इस सवाल को लिंक-टू हेल्पर के साथ करना है। दूसरा गुणों को सेट करने के बारे में है। यदि मैं गलत हूं और आप यह समझ सकते हैं कि लक्ष्य को पूरा करने के लिए सेटप्रॉपर्टीज का उपयोग कैसे किया जाए, तो मुझे इसे किसी jsfiddle या कुछ में देखना अच्छा लगेगा। – genkilabs