Javascript垃圾收集
我有扩展主干的基类。视图类。 我通过构造函数传递一个Jquery DOM元素,这个对象是垃圾收集的候选对象吗Javascript垃圾收集,javascript,backbone.js,garbage-collection,Javascript,Backbone.js,Garbage Collection,我有扩展主干的基类。视图类。 我通过构造函数传递一个Jquery DOM元素,这个对象是垃圾收集的候选对象吗 var MainView = BaseView.extend({ initialize: function(o) { this.container = o.myJqueryDomElement; this.render(); }, render: function() { this.container.append(this.$el); }
var MainView = BaseView.extend({
initialize: function(o) {
this.container = o.myJqueryDomElement;
this.render();
},
render: function() {
this.container.append(this.$el);
},
dispose: function() {
this.remove();
}
});
在我的代码中,我会这样做:
var mainView = new MainView({
myJqueryDomElement = $('#content')
});
首先,您应该将jQuery元素作为
el
传递,所以
var MainView = BaseView.extend({
initialize: function(o) {
this.render();
},
render: function() {
this.html(someTemplate)
},
dispose: function() {
this.remove();
}
});
var mainView = new MainView({
el: $('#content')
});
然后,这将作为jQuery对象通过
this.$el
在整个对象中可用,并且视图不应该只知道它所在的元素就知道它的容器。因此,如果您希望此视图成为主视图,请将选择器更改为$('#content.main')
或只是$('#main')
,然后。。。你的问题是什么?是的,我还有…还有?有什么问题或什么不起作用?多花一点力气来说明你的问题是什么,我们将不胜感激!很抱歉,我犯了一个错误,我在编辑和保存时不想发布!有人可以投票重新打开吗?我理解你们关于容器的观点,但我的问题是关于垃圾收集的。我将传递一个对象,而不是jQuery元素。