骨干视图和路由器 - 多次查看instanciated

时间:2015-11-07 02:32:11

标签: javascript backbone.js

我有以下路由器 var watchlistEditView = new WatchlistEditView({});

router.on('route:editWatchlist', function(id) {
    console.log("routing to editWachlist");
    console.log(id);

    var watchlistEditView = new WatchlistEditView({ });
    watchlistEditView.render({id: id});
});

我注意到我有多个视图实例,因此当我执行操作时,它会在每个实例上触发,这不是我想要的。

每次调用路由器时都可以创建新视图吗? 我怎么能阻止视图多次实例化?

由于

1 个答案:

答案 0 :(得分:0)

这是一项很好的研究,因为它涉及很多事情。内存管理,侦听器绑定和实际主干的事情正在处理您创建和销毁视图的每个时刻。 我建议阅读这篇文章。

https://lostechies.com/derickbailey/2011/09/15/zombies-run-managing-page-transitions-in-backbone-apps/

实际上我在使用主干木偶框架和幕后工作布局和主干视图时创建和销毁我需要的东西,如果我要向已经有视图的区域添加新视图,它会进行多次检查,就像渲染视图一样等等。

我建议继续创建它们,并在必要时查看何时销毁它们。