【发布时间】:2011-09-27 10:55:59
【问题描述】:
我有一个主 ViewModel,我的视图很棒,我有一个模态窗口 (fancybox),其中包含一些相当复杂的流程(您将在该模型中完成 3 个步骤)。
现在我为此创建了一个新的 ViewModel,而不是用它的关注点污染主 ViewModel。所以我们分别称他们为MainViewModel、ModalViewModel。
我原本打算通过一些模板将模态视图注入到主视图中,然后让fancybox将它们作为内容。但是,这样我将拥有重复的 dom 元素,这可能很危险,因为可能会有重复的元素 ID 等。
所以我想也许我应该尝试找到一种方法来使用 ajax 将模板注入到 fancybox 窗口中。
只是总结一下流程:
- 用户进入主视图
- 用户单击生成模式窗口的链接
- 用户以模态方式填写表单
- 用户点击模态提交
- 用户进入模态表单的第二阶段
- 用户以模态方式填写表格 2
- 用户提交表单
- 用户被转到新页面
那么我这样做的方式是否正确?或者我应该在 MainViewModel 中包含 ModalViewModel 作为子 viewModel 并以这种方式处理它?
【问题讨论】:
标签: javascript mvvm fancybox knockout.js