Backbone JS如何查看功能绑定?

时间:2013-10-31 12:13:27

标签: javascript backbone.js requirejs underscore.js

我正在阅读BackboneJS View

   SearchView = Backbone.View.extend({
        initialize: function(){
            alert("Alerts suck.");
        }
    });

    // The initialize function is always called when instantiating a Backbone View.
    // Consider it the constructor of the class.
    var search_view = new SearchView();

View对象中的每个函数都是在实例化时调用的,还是仅仅是初始化函数?

在实例化视图成功时,初始化更像是回调函数吗?究竟是什么意思?

我经历了谷歌。但发现大多数结果都有我无法理解的流行语。有人可以直接说出来吗?假设我不了解下划线?

1 个答案:

答案 0 :(得分:1)

实例化时只调用initialize函数。您可以将其视为各种构造函数。

即使在documentation中,初始化函数的标题为constructor/initialize

  

...如果视图定义了一个初始化函数,它将在首次创建视图时被调用。

如果在实例化时调用每个函数,那将毫无意义。想象一下,如果你的类的一个函数中有一些破坏性逻辑(很可能),你不会想要立即调用该函数。

在对象实例化的那一刻,你想要执行的任何其他函数都可以在initialize函数中调用。

initialize: function(){
    // alert("Alerts are not too cool (no offence).");
    console.log( "Consoles are cool" );
    another_init_func();
    more_init_stuff();
    be_awesome();
    ...
}