【发布时间】:2012-11-08 23:28:29
【问题描述】:
如果需要通过 ajax 将新项目添加到列表中,使用类似 Knockout 的最大好处是什么。
到目前为止,在我看来,我一直在做的是使用编辑器模板(带有关联的视图模型)来呈现项目列表。然后添加一个新项目,我向一个加载服务器端视图模型的操作发出请求,并返回一个刚刚附加到列表的 EditorTemplte 对象。像这样:
return Json(new { this.RenderPartialViewToString("MyEditorTemplate", model) });
淘汰的做事方式需要实现另一个视图模型来显示项目,然后另一个模板来显示它。但是这样做需要重复代码,因为视图模型必须在两个地方表示:在 cserver 端代码中,然后是淘汰视图模型的视图。这不是坏习惯吗?
我是否遗漏了什么,或者理解淘汰赛和 MVVM 的目的?
【问题讨论】:
标签: asp.net-mvc-3 mvvm knockout.js mvc-editor-templates