2013-04-07 12 views

Antwort

14
this.bind('myEvent', this.render, this); 
this.on('myEvent', this.render, this); 

Das sind genau gleichwertig und sind nicht auf die Unterstreichungs bind Funktion bezogen.

Hier ist ein Code von Backbone source:

// Aliases for backwards compatibility. 
Events.bind = Events.on; 
Events.unbind = Events.off; 

in beiden Zeilen des Codes also, Sie die gleiche Funktion aufrufen.

+0

Oh ja, Sie haben Recht. Vielen Dank !! – sachinjain024

2

_.bind im Unterstrich hat nichts mit der Bindung im Backbone-Ereignisobjekt zu tun. (oder Unterstrich)

_.bind in Unterstrich wird verwendet, wenn Sie eine Funktion an einen Kontext binden möchten (umbrechen Sie ihn in einen Closure). Wenn also die Funktion aufgerufen wird, ändert sich der Kontext nicht.

Die Backbone-Dokumentation besagt explizit, dass die Bindungsmethode im Ereignis ein Alias ​​für die on-Methode ist. Also, warum verlinken Sie die Bindedefinition in Unterstrichen?

http://backbonejs.org/#Events-on