मेरे पास DashboardView
नामक एक दृश्य है जो एकाधिक WidgetView
एस को तुरंत चालू करता है। प्रत्येक विजेट को अपनी खुद की घटना बाइंडिंग की आवश्यकता होती है। जहां तक मैं बता सकता हूँ, इन बाइंडिंग जब दृश्य प्रदान की गई और माता पिता को देखने के लिए जोड़ा जाता है, यानी खो जाना:Backbone.js में ईवेंट नेस्टेड विचार
class DashboardView extends Backbone.View
constructor: ->
context = @
_.each @collection, (w)->
dv = new app.WidgetView(model: w)
context.$el.append(dv.render())
class WidgetView extends Backbone.View
events:
"click .config" : "config_widget"
render: ->
_.template($("#widget-template").html(), @model)
यह इस तरह से कर रहा, विजेट का .config
तत्व पर क्लिक ईवेंट अब खो रहे हैं । क्या बच्चे के दृश्य पर ईवेंट हैंडलर सही ढंग से चैनल किए गए हैं, यह सुनिश्चित करते हुए नेस्टेड दृश्यों को अभिभावक में मिश्रित करने का एक बेहतर तरीका है?
इस समस्या को मैंने देखा है एक समाधान this article में आता है। यह सही दिखता है, लेकिन अगर मैं इसे हल करने का एक और शानदार तरीका हूं तो मैं उत्सुक हूं।
यह वही है जो मैं ढूंढ रहा था। धन्यवाद! – picardo
आप ['(w) =>'] (http://coffeescript.org/#fat_arrow) का उपयोग कर 'संदर्भ' सामग्री से बच सकते हैं। और '@ संग्रह' अंडरस्कोर होना चाहिए-ified पहले से ही '@collection.each (w) =>' एक और विकल्प है। –
@ एमयू कूल ':) 'वसा तीर के बारे में नहीं पता था। –