बैकबोन का उपयोग करने के लिए नया और एक बहुत ही सरल एप्लिकेशन है। असल में Clients
और ClientItems
हैं। मेरे पास सभी ग्राहकों को दिखाने का एक दृश्य है और यदि आप किसी क्लाइंट पर क्लिक करते हैं तो आपको अपने क्लाइंट इटम्स पर ले जाया जाता है। इस क्लाइंट इटम्स व्यू पर जाकर केवल क्लाइंट व्यू को छिपाना चाहिए और क्लाइंट्स पर वापस जाना चाहिए क्लाइंट इटम्स को छिपाना चाहिए। अब, प्रत्येक दृश्य के लिए मेरे render()
फ़ंक्शन में, यह संग्रह के माध्यम से जा रहा है और पृष्ठ पर सामग्री को गतिशील रूप से जोड़ रहा है। जब मैं दोनों के बीच आगे और पीछे जाता हूं (बैक बटन का उपयोग करके) मुझे वास्तव में फिर से प्रस्तुत करने की ज़रूरत नहीं है क्योंकि पेज में मौजूद सभी डेटा बस छिपे हुए हैं। यह तर्क कहां जाना चाहिए? अभी मेरे पास render()
फ़ंक्शन में है लेकिन यह मैला लगता है, इसे संभालने का पसंदीदा तरीका क्या है?बैकबोन दिखाए गए दृश्यों को छुपा/छुपाएं सर्वोत्तम अभ्यास
उत्तर
हम कई आम आवेदन भर में इस्तेमाल किया समारोह के साथ एक वैश्विक चर App
उपयोग कर रहे हैं:
var App = {
initialize : function() {
App.views = {
clientView : new ClientsView(),
clientItemView : new ClientsItemsView()
}
},
showView: function(view){
if(App.views.current != undefined){
$(App.views.current.el).hide();
}
App.views.current = view;
$(App.views.current.el).show();
},
...
}
और फिर मैं आवेदन के अन्य भागों से इस App
का उपयोग करें:
App.showView(App.views.clientView);
IntoTheVoid के समाधान अच्छा है - दृश्यों को छिपाने/दिखाने के लिए एक ही जगह रखना अच्छा लगता है। लेकिन आप तर्क कैसे सक्रिय करते हैं?
मेरे अनुभव में, राउटर इसके लिए सबसे अच्छी जगह हैं। जब कोई मार्ग बदलता है और उपयुक्त फ़ंक्शन कहा जाता है, तो आपको सक्रिय, दृश्यमान दृश्य अपडेट करना चाहिए।
क्या होगा यदि आपको एक बार में दिखाई देने के लिए कई दृश्यों की आवश्यकता है? यदि आपके पास प्राथमिक दृश्य है जो मार्ग बदलते समय हमेशा बदलता है, और कई सहायक चिपचिपा विचारों, तो आपको चिंता करने की आवश्यकता नहीं है। लेकिन अगर यह उससे अधिक जटिल है, तो कॉम्बो व्यू बनाने के बारे में सोचें जो el
नोड वाले सभी प्रासंगिक विचारों को अच्छी तरह से पैकेज करता है। इस तरह उपर्युक्त तर्क अभी भी काम करता है, और इस समय आपके विचारों को देखने के लिए तर्क के साथ आपके राउटर फ़ंक्शन तर्क से भरे नहीं हैं।
- 1. सर्वोत्तम अभ्यास
- 2. UITableView सर्वोत्तम अभ्यास
- 3. एसवीएन लेआउट - सर्वोत्तम अभ्यास
- 4. संस्करण नियंत्रण "सर्वोत्तम अभ्यास"
- 5. समस्या: बुलबुले दिखाए गए हैं
- 6. LinqToSql सर्वोत्तम अभ्यास
- 7. एसक्यूएल कनेक्शन सर्वोत्तम अभ्यास
- 8. जीडब्ल्यूटी सर्वोत्तम अभ्यास - एमवीपी
- 9. अपवाद लॉगर: सर्वोत्तम अभ्यास
- 10. कोड अनुबंध सर्वोत्तम अभ्यास
- 11. फेसबुक लॉगिन सर्वोत्तम अभ्यास
- 12. कक्षा सर्वोत्तम अभ्यास
- 13. सर्वोत्तम अभ्यास फोनगैप आर्किटेक्चर
- 14. परिपत्र-निर्भरता सर्वोत्तम अभ्यास
- 15. नेस्टेड विधियों, सर्वोत्तम अभ्यास
- 16. कनेक्शन स्ट्रिंग सर्वोत्तम अभ्यास
- 17. एलडीएपी सर्वोत्तम अभ्यास
- 18. ctags सर्वोत्तम अभ्यास
- 19. निर्भरता इंजेक्शन सर्वोत्तम अभ्यास
- 20. एलडीएपी मॉडलिंग सर्वोत्तम अभ्यास
- 21. लुसेन.Net सर्वोत्तम अभ्यास
- 22. रिलीज प्रबंधन - सर्वोत्तम अभ्यास
- 23. kwargs सर्वोत्तम अभ्यास पार्सिंग
- 24. ओएसजीआई ढीला-युग्मन सर्वोत्तम अभ्यास
- 25. PHP फॉर्म डिज़ाइन सर्वोत्तम अभ्यास
- 26. चेतावनियों को संभालने के लिए सर्वोत्तम अभ्यास
- 27. आईआईएस को प्रकाशित करना - सर्वोत्तम अभ्यास
- 28. एकाधिक jQuery फ़ाइलों को मिलाएं - सर्वोत्तम अभ्यास?
- 29. कॉन्फ़िगरेशन सेटिंग्स पर सर्वोत्तम अभ्यास
- 30. jQuery मानक और सर्वोत्तम अभ्यास
अच्छा लग रहा है। मैं देखता हूं कि आप 'प्रारंभिक' में बल्ले से सीधे दृश्य बनाते हैं। क्या यह एक आम बात है? क्या आप संग्रह के साथ ऐसा ही करेंगे? अब मुझे समझ में आता है क्योंकि मुझे कभी भी एक ही उदाहरण की आवश्यकता होगी, लेकिन मैं अभी भी सीख रहा हूं। – Brandon
हम अभी विचारों को तुरंत बना रहे हैं, अन्य सभी चीजें जब आवश्यक हो तो बनाई जाती हैं। आप निश्चित रूप से आवश्यकतानुसार requ.js जोड़ सकते हैं, और init view जब आवश्यक हो। –
हम App.views.current.show() का उपयोग कर रहे हैं ताकि दिखाने के संबंध में कोई अतिरिक्त तर्क वहां किया जा सके (अन्य ईवेंट श्रोताओं को बदल सकता है) –