5

我正在使用 knockoutJS 作为客户端 MVVM 框架。

有时我会创建一个临时视图模型(通过 js 函数)并将它们分配给动态加载的 DOM 元素。

例如,当不再需要某些内容的评论面板时,我会从 DOM 中删除评论面板 div。当我通过指定 DOM 元素参数调用 applyBindings 时,用作视图模型的变量会发生什么情况?它正在以某种方式处置?还是我负责处理?如果是这样 - 我该怎么做?

4

1 回答 1

2

将您的 viewModel 分配给一个变量:

var viewModel = {...}
ko.applyBindings(viewModel, $("#html-id"));

销毁视图模型:

ko.cleanNode($("#html-id"));
delete viewModel;
$("#html-id").remove();

我还没有尝试过,但这是我计划在一个将动态加载/销毁模块的新项目中使用的......

于 2012-09-19T18:16:30.983 回答