使用knockoutjs实现独立的编辑页面

时间:2014-05-29 14:17:26

标签: knockout.js

现在我有一个显示在具有编辑模板的表格中的视图模型列表。这非常适合进行小的更改,但只有某些属性会暴露给该表。我希望能够允许用户在独立视图中编辑记录,只是为了编辑可以包含更多信息(现在我只是将每个记录的表行扩展为一个巨大的tr元素,这非常混乱)。

我认为我想按照此解决方案中的建议执行某些操作: Using KnockoutJS with multiple pages

他们将绑定应用于单个dom元素,例如编辑视图......

我最困惑的地方是我做的事情是:

ko.applyBindings(
editModelViewModel, 
document.getElementById('editView')
);

我只是在名为editModelViewModel的主视图模型中保留一条记录,并将模型切换为当时正在编辑的内容,我是否应该以某种方式清除每次要切换到此编辑视图时应用的绑定,或者是否有完全不同的方式来完成在knockout.js中为模型构建独立的编辑页面?

应该注意的是,我使用sammy.js作为我的路由,所以我认为我的编辑路线是这样的:

#/editObject/:id

1 个答案:

答案 0 :(得分:1)

如果模型包含两种模式的所有数据怎么办?然后,视图可以选择要公开的值。如果您只想拥有一个视图,您甚至可能会设置一个标志来设置视图是否处于编辑模式。然后,路由器必须做的就是设置该标志。