मैं यह पता लगाने की कोशिश कर रहा हूं कि बैकबोन.जेएस मेरे वर्तमान प्रोजेक्ट के लिए सही ढांचा है: विज़ुअलाइज़ेशन ऐप।गैर रीस्टफुल ऐप के साथ Backbone.js? (Backbone.js मेरे वर्तमान प्रोजेक्ट के लिए सही है?)
1) राज्य/रूटिंग:
मैं कई सवाल है?
चूंकि यह आपका सामान्य रीस्टफुल ऐप नहीं है, बल्कि इन चार्टों के लिए विभिन्न चार्ट प्रकारों और सेटिंग्स के साथ विज़ुअलाइजेशन एप्लिकेशन है, मैं यूआरएल में राज्य कैसे बनाए रखूं?
AreaChartModel = Backbone.Model.extend({
defaults: {
selectedCountries: [],
year: 1970,
stacked: false
},
initialize: function(){
[...]
}
});
मॉडल मैं इन विशेषताओं में से कुछ को क्रमानुसार करना चाहते हैं ताकि मैं विशिष्ट राज्य बुकमार्क कर सकते हैं के लिए एक अद्यतन पर:: मान लीजिए कि मेरी areaChart मॉडल इस तरह चूक की एक संख्या है चलो chartApp.html # ! वर्ष = 1 9 70 & स्टैक्ड = झूठी इत्यादि
और इसके विपरीत, इस स्थिति के साथ ऐप को जोड़ने में, मैं यूआरएल राज्य को "डेपाराम" कैसे कर सकता हूं और मॉडल सेट कर सकता हूं? क्या मैं बैकबोन के आंतरिक रूटिंग का उपयोग कर सकता हूं?
2) नियंत्रक और युग्मन?
ऐसा लगता है कि बैकबोन में एक सुंदर तंग दृश्य-मॉडल युग्मन है? क्या यह वास्तव में मॉडल के लिए मेरा क्षेत्रChartView उदाहरण के लिए बाध्य होना चाहिए?
AreaChartView = Backbone.View.extend({
initialize: function(){
areaChartModel.bind("change:year", this.render);
}
});
क्या यह आमतौर पर नियंत्रक की भूमिका नहीं है?
3) निरंतरता: मॉडल बनाम नियंत्रक?
इस परिदृश्य को देखते हुए:
"साइडबार" में एक परिवर्तन कार्यों के एक दृश्य को गति प्रदान करना चाहिए:
1) "वर्तमान चयन के लिए नए डेटा लोड किया जाना चाहिए"
2) "के आधार पर इस डेटा, दृश्य दृश्य में तराजू अद्यतन किया जाना चाहिए "
3)" दृश्य दृश्य रेंडर किया जाना चाहिए "
मैं इन कार्यों कहां रखना चाहिए और मैं मॉडल में एक घटना है कि मैं को गति प्रदान जब कैसे बना सकते हैं राज्य स्थिर है? (यानी जब सभी कार्यों को बुलाया गया है और अब दृश्य राज्यों को सेट करने का समय है?)
आपके इनपुट के लिए बड़ा धन्यवाद। यह वास्तव में स्पष्ट था: "बैकबोन व्यू अनिवार्य रूप से पारंपरिक एमवीसी में नियंत्रक हैं। बैकबोनिंग इंजन जो आप बैकबोन.जेएस के साथ उपयोग करते हैं वह पारंपरिक एमवीसी व्यू है।" अब मैं सिर्फ # 3 के साथ संघर्ष कर रहा हूं - मॉडल अपडेट होने पर अनुक्रम में आने वाले सभी कार्यों को कहां रखा जाए। – dani
हाय डानी, क्या आपने # 3 को हल करने का प्रबंधन किया था? – papdel
अधिकांश लोग आजकल नियंत्रक की मुख्य कार्यक्षमता के बारे में सोचते हैं क्योंकि सर्वर पक्ष एमवीसी पैकेजों की वजह से एमवीसी को एक अलग प्रतिमान में फिट करने की कोशिश की गई है। चूंकि नियंत्रक हमेशा पूरे दृश्य को फिर से प्रस्तुत करता है, इसलिए सर्वर पर ग्लूइंग घटनाओं और विचारों का कार्य आवश्यक नहीं था। पारंपरिक क्लाइंट साइड एमवीसी में, नियंत्रक घटनाओं का जवाब देने और केवल उन विचारों को अपडेट करने के लिए ज़िम्मेदार है जिनकी आवश्यकता है। हालांकि, एक पृष्ठ के लिए शीर्ष स्तर नियंत्रक की भूमिका के भीतर रूटिंग अच्छी तरह से फिट होती है (इसलिए यह राज्य को बुकमार्क के रूप में सहेज सकती है) –