是否可以在backbone.js视图中使用全局变量?
exmpl:
var TodoView = Backbone.View.extend({
counter: null ; // is this possible ?
initialize: function(){
this.render();
},
render: function(){
}
});
答案 0 :(得分:22)
您可以轻松地将变量存储在至少3个不同的范围内:
this
对象this.selectedItem = this.$el.find('.selected');
TodoView.counter = 0;
(在整个.extend
调用之后放置var
或只是明确指定window
对象window.appLaunchTime = new Date()
答案 1 :(得分:3)
除了彼得已经说过的内容之外,如果您有兴趣拥有在您创建的TodoView
的所有实例中可用的私有变量,那么您可以执行以下操作。
(function () {
var counter = 0; //This can be used now as a private variable inside TodoView
window.TodoView = Backbone.View.extend({
initialize: function(){
this.render();
counter += 1;
},
render: function(){
}
});
})();
答案 2 :(得分:0)
尝试将其置于静态范围
var TodoView = Backbone.View.extend({
TodoView.counter++//reference it this way
},{
counter: null ;})
可能有点像全局变量