Knockoutjs 清理 DOM 删除



我将在单页应用程序中使用 knockoutjs,我担心即使应用绑定的任何 DOM 元素被删除,可观察量是否仍保留在内存中。我认为我需要在我的应用程序中处理这个问题,通过调用

ko.cleanNode(DOMElement)

在每个使用可观察量的 DOM 元素上,然后再将它们从文档中删除。我只需要有人确认是这种情况

谢谢

CleanNode 不会删除可观察量,它只是将它们从 UI 元素中解绑。 您还需要通过将视图模型设置为 null 来删除对视图模型的任何引用,以便对其进行垃圾回收,如下所示:

var myVM = new myViewModel();
ko.applyBindings(myVM, DOMElement);
//All your other stuff
ko.cleanNode(DOMElement);
myVM = null;

最新更新