Backbone.js 为什么要定义BackboneJS模型&;加载jQuery中的视图并将其连接到窗口对象?

Backbone.js 为什么要定义BackboneJS模型&;加载jQuery中的视图并将其连接到窗口对象?,backbone.js,Backbone.js,我看到很多教程在jQuery加载后初始化主干模型/视图。为什么呢?你以前不能给它下定义吗 例如 jQuery -> class ListView extends Backbone.View el: $ 'body' initialize: -> _.bindAll @ @counter = 0 @render() 可以在加载文档之前定义类,并在加载文档之后初始化视图/模型吗 我还看到在窗口下定义的模型/视图为什么 wi

我看到很多教程在jQuery加载后初始化主干模型/视图。为什么呢?你以前不能给它下定义吗

例如

jQuery ->

  class ListView extends Backbone.View

    el: $ 'body'

    initialize: ->
      _.bindAll @
      @counter = 0
      @render()
可以在加载文档之前定义类,并在加载文档之后初始化视图/模型吗


我还看到在
窗口下定义的模型/视图
为什么

window.TodoView = Backbone.View.extend
  ...

为什么在jQuery之后初始化视图?

主干网唯一的硬依赖项是下划线.js(>1.3.1)。对于RESTful持久性,通过主干.Router和主干.View进行的DOM操作的历史支持包括json2.js和jQuery(>1.4.2)或Zepto

[我的重点]

这就是依赖性

窗口下定义的模型/视图

它简化了这些小教程示例—所有内容都可以访问
窗口
,因此它为全局变量(系数、变量、函数等)提供了一个有用的(如果混乱的话)转储平台


在我看来,对于更大的(非演示)项目,您应该使用类似的东西。

我确信,这样做是为了简单。当然,您可以(也可能应该)在
jQuery(document).ready()之外定义构造函数。而且,为了不污染全局空间,您还可以(而且可能应该)使用一个您自己的全局对象