在javascript中的垃圾淘汰赛视图模型集合

Max*_*lov 5 knockout.js

我使用knockoutJS作为客户端MVVM框架.

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

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

Mic*_*pas 2

将您的 viewModel 分配给变量:

var viewModel = {...}
ko.applyBindings(viewModel, $("#html-id"));
Run Code Online (Sandbox Code Playgroud)

销毁viewModel:

ko.cleanNode($("#html-id"));
delete viewModel;
$("#html-id").remove();
Run Code Online (Sandbox Code Playgroud)

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