在需要通过 ajax 将新项目添加到列表中的情况下,使用 Knockout 之类的最大好处是什么。
到目前为止,在我看来,我一直在做的是使用编辑器模板(带有关联的视图模型)来呈现项目列表。然后为了添加一个新项目,我向一个加载服务器端视图模型的操作发出请求,并返回一个刚刚附加到列表的 EditorTemplte 对象。像这样:
return Json(new { this.RenderPartialViewToString("MyEditorTemplate", model) });
淘汰的做事方式需要实现另一个视图模型来显示项目,然后另一个模板来显示它。但是这样做需要重复代码,因为视图模型必须在两个地方表示:在 cserver 端代码中,然后是淘汰视图模型的视图。这不是坏习惯吗?
我是否遗漏了什么,或者了解淘汰赛和 MVVM 的目的?