4
唔明如何最好地做淘汰赛如下:Knockout.js - 多个“页面”,切换模型?
我移植一个多页的服务器端应用淘汰赛,它做了很多不同的功能,并在不同的页面数据,例如:
- 列表中的所有用户
- 查看用户页面
- 编辑用户页面
- 您的帐户设置
- 等
这些不同的页面显示在每个页面的主要部分,具有共同的页眉,侧边栏和页脚。
有在所有页面(在头和边栏)常见的数据,我想这像一个“单页”应用程序(与段之间的动画等等)
待您的反馈意见,我“M想最好的办法是将有:
- 一个主要模式,与子模型为每个页面“
- 共同观测适用于头,侧边栏等
- 可观察到的指示”活动页面“和模板
例如:
var MainModel = {
listUsersModel: { ... },
userModel: { ... },
accountModel: { ... },
commonProperty: ko.observable('Blah'),
anotherCommonProperty: ko.observable('Blah'),
activeSection: ko.observable('listUsers')
}
虽然我认为这会工作,我有点模糊如何“切换页面”,并更新新的页面与新服务器模型边数据。
是做到这一点的东西是最好的/唯一途径:
MainModel.userModel.userId(123456)
// userModel above subscribes to userId changes, to get new server via ajax
MainModel.activeSection = 'viewUser'
?
最近的另一个选择是使用[迪朗达尔(http://durandaljs.com/),这是管理一个大框架这在淘汰赛应用程序。 – 7zark7
这应该是一个答案,而不仅仅是一个评论。几乎错过了它。 –