2012-06-21 15 views
6

मैं बस backbone.js में जा रहा हूं और मैंने सोचा कि इसमें शामिल होने का सबसे अच्छा तरीका वास्तव में एक टोडो सूची बनाना है (हाँ ... सुंदर मूल)। एक तरफ हास्य, मैंने संग्रह में एक विशेषता जोड़ने के लिए, Google और दस्तावेज़ और स्टैक ओवरफ्लो की खोज की है। तो, मेरे मामले में एक todo सूची listitems का संग्रह है। हालांकि मेरे डिजाइन के अनुसार टोडो लिस्ट में एक शीर्षक हो सकता है, मैं कई सूचियां बनाने में सक्षम होना चाहता हूं।क्या आप Backbone.js संग्रह पर विशेषताओं को सेट कर सकते हैं? यदि हां, तो कैसे?

var TodoList = Backbone.Collection.extend({ 
    model: ListItem 
}); 

//is this possible for collections? 
var newTodoList = new TodoList({name: "My first list"}); 

धन्यवाद मदद के लिए बहुत कुछ! इसकी प्रशंसा करना!

उत्तर

11

हां, यह संभव है। Collection निर्माता के हस्ताक्षर को देखो:

नया संग्रह ([मॉडल], [विकल्प])

तो तुम इस प्रकार लिख सकते:

var ListItem = Backbone.Model.extend({}); 
var TodoList = Backbone.Collection.extend({ 
    model: ListItem, 
    initialize: function(models, options) { 
     options || (options = {}); 
     if (options.title) { 
      this.title = options.title; 
     }; 
    } 
}) 

var iPromise = new TodoList([], { 
    title: 'NY Resolutions' 
}) 

console.log(iPromise.title); 
+0

के लिए धन्यवाद एक बहुत मदद! वह जवाब था :) –

+6

आपका स्वागत है। लेकिन मैंने थोड़ा और सोचा, और अब मुझे लगता है कि मेरा जवाब वह नहीं है जिसे आप ढूंढ रहे हैं :)। मुझे लगता है कि आप परिवर्तन ईवेंट में श्रोताओं को जोड़ने के साथ-साथ आप 'मॉडल' विशेषताओं के साथ भी कर सकते हैं। लेकिन उपर्युक्त दृष्टिकोण के साथ आप इसे नहीं कर सकते हैं। क्योंकि इस 'संग्रह' गुणों के बारे में कुछ खास नहीं है - यह केवल ऑब्जेक्ट गुण है और बैकबोन इसका किसी भी तरह से उपयोग नहीं करता है। तो मुझे लगता है कि अभी तक एक और मॉडल बनाने के लिए बेहतर होगा 'टोडोलिस्ट'। मैं थोड़ी देर बाद एक उदाहरण दूंगा। क्षमा करें अगर मैं आपको भ्रमित करता हूं। उदाहरण देखने के लिए उत्सुक – theotheo

+0

:) –

संबंधित मुद्दे

 संबंधित मुद्दे