1

destroy()当我离开某个视图(不是视图控制器,而是我使用的附加控制器)时,我正在调用控制器。如果我再回到同一个视图,控制器仍然在那里,它具有以下属性:

_didCallDestroy: true
isDestroyed: true
isDestroying: true

一切都按预期设置,但我的观点仍然对它们具有约束力。它不是因为它的内容仍然保存数据而导致破坏吗?这可能是什么原因造成的?

4

1 回答 1

1

上面提到的附加数组控制器被放置在一个数组中。解决方案是不仅要销毁控制器,还要将数组重置为 []:

this.get('dataSets').forEach(function (ds) {
  ds.destroy();
});
this.set('dataSets', []);
于 2013-04-15T14:44:13.747 回答