我将在单页应用程序中使用knockoutjs,我担心即使应用了绑定的任何DOM元素,observable是否仍保留在内存中。 我认为我需要在我的应用程序中通过调用
来处理这个问题ko.cleanNode(DOMElement)
在使用observables的每个DOM元素上,然后从文档中删除它们。 我只需要有人确认是这种情况
由于
答案 0 :(得分:3)
CleanNode不会删除observable,它只是将它们从UI元素中取消绑定。您还需要删除对视图模型的任何引用,方法是将它们设置为null,以便对它们进行垃圾回收,例如:
var myVM = new myViewModel();
ko.applyBindings(myVM, DOMElement);
//All your other stuff
ko.cleanNode(DOMElement);
myVM = null;