我应该关注木偶的控制器关闭吗?

时间:2014-02-19 18:19:21

标签: marionette

让我们使用Marionett建立的博客示例。博客文章是一个子应用程序并挂钩路由post/:id。它还有一个继承自Marionette.Controller的控制器。很正常。

每次点击post/:id都会创建一个新的控制器实例,管理相关的模型和视图。控制器实例将触发App.vents但不会侦听App.vents。

我的问题是,由于当用户导航时会创建很多控制器实例,当控制器中有close()方法时,我是否应关注实例的关闭?如果不关闭它们会有内存泄漏吗?

感谢。

1 个答案:

答案 0 :(得分:1)

可能存在内存泄漏,具体取决于控制器内部的内容。此外,如果你是控制器使用listenTo来观看其他模型/对象上的事件,你可以获得僵尸事件的积累。如果没有看到您的代码,就很难确定。

总的来说,我想为什么不关闭控制器呢?我这样做的方式(来自BackboneRails教程)是让第一个视图控制器呈现(通常是一个布局)作为主视图,然后绑定到视图的关闭事件 - 当视图关闭时,控制器将自己调用close。您可以将其构建到基本控制器中,以便自动进行。这对我来说效果很好......