1

因此,我只想在尚未渲染的情况下渲染 sidemenu itemview。这太不重要了,我不强制重新渲染。

如果尚未在区域中渲染,我已经想出了一个渲染视图的解决方案。

以路由器调用的控制器对象为例:

Admin.showIndex= function(){
    if (!MyApp.layout.sidepanel.currentView || !(MyApp.layout.sidepanel.currentView instanceof AdminSidePanel)){
        MyApp.layout.sidepanel.show(new AdminSidePanel());
    }else{
        alert("Already rendered sidepanel!");
    }
    // More stuff!
}

这是一个好方法吗?它是这样工作的:

  • 如果我 F5 刷新页面 /#admin ,则呈现侧面板。
  • 如果我进入例如 /#admin/submenu 并返回到#admin,则不会再次呈现侧面板。
4

1 回答 1

2

对我来说看上去很好。我在我的项目中使用了类似的逻辑。

我更喜欢这种方法,而不是在MyApp.

于 2012-08-27T23:19:09.570 回答