He estado aprendiendo algunos backbone.js y he visto muchos casos en los que _.bindAll()
se usa. He leído toda la página de documentación de backbone.js y underscore.js para intentar tener una idea de lo que hace, pero todavía estoy muy confuso en cuanto a lo que hace. Aquí está la explicación del subrayado:
_.bindAll(object, [*methodNames])
Vincula una serie de métodos en el objeto, especificados por methodNames, para que se ejecuten en el contexto de ese objeto cada vez que se invocan. Muy útil para vincular funciones que se utilizarán como controladores de eventos, que de otro modo se invocarían con un this bastante inútil. Si no se proporcionan MethodNames, todas las propiedades de la función del objeto se vincularán a él.
var buttonView = { label : 'underscore', onClick : function(){ alert('clicked: ' + this.label); }, onHover : function(){ console.log('hovering: ' + this.label); } }; _.bindAll(buttonView); jQuery('#underscore_button').bind('click', buttonView.onClick); => When the button is clicked, this.label will have the correct value...
Si puede ayudar aquí dando otro ejemplo tal vez o alguna explicación verbal, cualquier cosa será apreciada. Traté de buscar más tutoriales o ejemplos, pero ninguno resultó que sirviera para lo que necesitaba. La mayoría de la gente parece saber lo que hace automáticamente ...