如果你有一些根级别的HTML出现在“几乎”每个屏幕上,你会在哪里/如何组织它?
我使用的是backbone-boilerplate和requirejs。其中一个根级视图是一个全局导航元素,可以随时从屏幕底部调用。
这是在一个模块中组织的,该模块具有一个模型(可见性、选定状态、点击日志等)。应用程序存储在:
ClientName.app = _.extend( { rootViews: {} }, Backbone.Views);然后在我的路由器初始化方法中,我有:
ClientName.app.rootViews.globalNav = new GlobalNav.Views.BottomView({ model: new GlobalNav.Models.Bottom()});它工作得很好,但随着功能的增长,路由器初始化方法在类似的根视图、子路由器等方面变得失控。我是不是完全错过了什么?
你有什么推荐的?
发布于 2012-04-22 06:07:10
你检查过Marionette.Region了吗?这允许您将视图分配给特定的div,例如您的页脚。您可以将应用程序的正文区域定义为另一个区域,当您导航到不同页面时,可以动态切换该区域。
对于视图控制器来说,路由器通常不是一个好的选择。相反,我建议去看看Marionette,它很好地处理了这类事情。您可以使用application events实现页面导航控件,您可以将主视图连接起来进行侦听,然后动态地换出区域。请查看Marionette文档底部的优秀示例应用程序作为起点。
https://stackoverflow.com/questions/10236063
复制相似问题