我正在重构一些现有代码以使用Knockout。有问题的代码是日历,并且是在用户页面通过前几个月或后几个月或几周动态构建的。多次应用绑定的正确方法
日历的工作方式是当用户按next或previous时,容器比渲染清除然后重建。
让Knockout工作很容易,只需要在单元格上应用正确的data-bind
参数,然后调用ko.applyBindings
即可。
我担心的是,因为代码破坏了Knockout绑定的DOM元素,所以它正在泄漏内存。这是否是这种情况,如果是这样,在清除包含绑定的容器之前日历应该做些什么?
你有使用浏览器的[开发工具(https://developers.google.com/web/tools/chrome-devtools/memory-problems/)来检查你的假设?通常,如果您使用knockout来构建DOM,除非通过绑定处理程序,否则不应触摸它。使用'with','if','template'和'foreach'绑定动态添加*和*删除部分UI。 – user3297291