【发布时间】:2013-10-31 11:20:44
【问题描述】:
我有以下视图类:
define(function(require) {
var Backbone = require('backbone');
var TestView = Backbone.View.extend({
el: $("#test"),
test: new Array(),
initialize: function(){
this.test.push("test");
console.log(this.test);
}
});
return TestView
});
当我实例化视图时,像这样:
var v = new TestView();
测试数组每次递增一,而不是在每个实例上为空。我已采取措施删除僵尸视图(遵循此 URL 中的步骤:http://lostechies.com/derickbailey/2011/09/15/zombies-run-managing-page-transitions-in-backbone-apps/),但该数组仍保留每个新实例的旧数据。
显然我可以删除初始化函数中的数据,但我很好奇为什么这些数据会保留在本质上是一个全新的视图对象中?好像是一些垃圾收集问题?
【问题讨论】:
-
如果你设置
test: []而不是new Array()呢? -
不幸的是同样的交易:(
-
你能展示你在哪里进行测试的全部相关代码吗?