我正在backbone.js 中开发一个小型Web 应用程序。在一个视图中,我使用 setInterval 方法来提供一些动画效果。我通过增加一个变量以 3s 的间隔更改 img 标签的 src 属性index
。
问题是当我重新进入同一个视图时,索引变量在不到 3 秒的时间内递增。有时小于1s。
在重新渲染视图之前,我将使用以下代码关闭已经存在的视图以避免僵尸对象。
我的路由器
搜索页面:
function(data) {
if(!directory.myview){
directory.myview=new directory.SearchView({model:data});
}
else{
directory.myview.close();
directory.myview=new directory.SearchView({model:data});
}
// code to append the rendered view to html page comes here
}
我的观点
directory.SearchView = Backbone.View.extend({
render:function () {
this.$el.html(this.template(this.model));
return this;
},
close :function()
{
this.unbind();
this.remove();
delete this.$el;
delete this.el;
}
});