Javascript 什么';下面的backbone.js示例中的模型、控制器和视图是什么?
我得到了这个密码:Javascript 什么';下面的backbone.js示例中的模型、控制器和视图是什么?,javascript,model-view-controller,backbone.js,Javascript,Model View Controller,Backbone.js,我得到了这个密码: (function($){ var ListView = Backbone.View.extend({ el: $('body'), // el attaches to existing element events: Where DOM events are bound to View methods. Backbone doesn't have a separate controller to handle such bindings; it all hap
(function($){
var ListView = Backbone.View.extend({
el: $('body'), // el attaches to existing element
events: Where DOM events are bound to View methods. Backbone doesn't have a separate controller to handle such bindings; it all happens in a View.
events: {
'click button#add': 'addItem'
},
initialize: function(){
_.bindAll(this, 'render', 'addItem'); // every function that uses 'this' as the current object should be in here
this.counter = 0; // total number of items added thus far
this.render();
},
render() now introduces a button to add a new list item.
render: function(){
$(this.el).append("<button id='add'>Add list item</button>");
$(this.el).append("<ul></ul>");
},
addItem(): Custom function called via click event above.
addItem: function(){
this.counter++;
$('ul', this.el).append("<li>hello world"+this.counter+"</li>");
}
});
var listView = new ListView();
})(jQuery);
(函数($){
var ListView=Backbone.View.extend({
el:$('body'),//el附加到现有元素
事件:其中DOM事件绑定到视图方法。主干没有单独的控制器来处理此类绑定;它都发生在一个视图中。
活动:{
'单击按钮#添加':'添加项'
},
初始化:函数(){
_.bindAll(this'render',addItem');//使用'this'作为当前对象的每个函数都应该在这里
this.counter=0;//到目前为止添加的项目总数
这个。render();
},
render()现在引入一个按钮来添加新的列表项。
render:function(){
$(this.el).append(“添加列表项”);
$(this.el)。追加(“
”);
},
addItem():通过上面的click事件调用自定义函数。
附加项:函数(){
这个.counter++;
$('ul',this.el).append(“你好世界”+this.counter+” ”);
}
});
var listView=new listView();
})(jQuery);
来自教程
我知道Backbone.js在前端引入了MVC模式。
但在上面的代码中,我看不到这一点
有人能给我解释一下吗?这只是视图部件代码。请参阅同一教程中的其他.js文件。最好检查从1.js到5.js的所有文件
最好先检查一下:这只是视图部件代码。请参阅同一教程中的其他.js文件。最好检查从1.js到5.js的所有文件
最好从第一步开始检查:注意主干视图并不是您在MVC中期望的视图,它更像是MVP中的控制器或演示者。这里有一个很好的例子来描述这种差异。请注意,主干视图并不是您在MVC中期望的视图,它更像是MVP中的控制器或演示者。这里有一个很好的例子来描述这种差异。从技术上讲,backbone.js中没有控制器。主要结构是模型、视图、集合(充当数组并包含大量模型)和路由器 您列出的链接——可能是学习Backbone.js的最佳方式——尤其是在Javascript方面没有什么背景知识的情况下。所以你走对了方向。该项目直接引入了backbone.js ToDo列表教程:
这个网站还将从一个更基本的层面解释一些事情——我发现它非常有用:从技术上讲,backbone.js中没有控制器。主要结构是模型、视图、集合(充当数组并包含大量模型)和路由器 您列出的链接——可能是学习Backbone.js的最佳方式——尤其是在Javascript方面没有什么背景知识的情况下。所以你走对了方向。该项目直接引入了backbone.js ToDo列表教程:
本网站还将从一个更基本的层面解释问题——我发现它非常有用:不要使用mvc,请参阅web编程中对oop的批评不要使用mvc,请参阅web编程中对oop的批评