在事件'上的Backbone.js;s回调函数
我正在尝试理解Backbone.js,我有一个与以下示例相关的问题-在事件'上的Backbone.js;s回调函数,backbone.js,backbone-events,Backbone.js,Backbone Events,我正在尝试理解Backbone.js,我有一个与以下示例相关的问题- var Sidebar = Backbone.Model.extend({ promptColor: function() { var cssColor = prompt("Please enter a CSS color:"); this.set({color: cssColor}); } }); window.sidebar = new Sidebar; sidebar.on('change:c
var Sidebar = Backbone.Model.extend({
promptColor: function() {
var cssColor = prompt("Please enter a CSS color:");
this.set({color: cssColor});
}
});
window.sidebar = new Sidebar;
sidebar.on('change:color', function(model, color) {
$('#sidebar').css({background: color});
});
sidebar.set({color: 'white'});
sidebar.promptColor();
on事件的语法为-onobject.on(事件,回调,[context])。在上面的回调函数示例中,我们为什么要传递模型变量
谢谢,
prat.主干网传递3个回调参数,您可以(可选)使用这些参数:
您的代码使用其中的前2个。颜色更改时,回调将获取更改的模型和新颜色:
sidebar.on('change:color', function(model, color) {
$('#sidebar').css({background: color});
});
这也可以通过将模型设置为回调的This
上下文来实现:
sidebar.on('change:color', function() {
$('#sidebar').css({background: this.get('color')});
}, sidebar);
请参见此处的两个示例:主干传递3个回调参数,您可以(可选)使用这些参数:
您的代码使用其中的前2个。颜色更改时,回调将获取更改的模型和新颜色:
sidebar.on('change:color', function(model, color) {
$('#sidebar').css({background: color});
});
这也可以通过将模型设置为回调的This
上下文来实现:
sidebar.on('change:color', function() {
$('#sidebar').css({background: this.get('color')});
}, sidebar);
请参见此处的两个示例: