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的批评