我正在尝试摆脱分离的DOM元素,并且很难找到泄漏的原因。
有人可以帮我理解存储在分离窗口属性中的DOM包装器的本机链接是什么。什么是原生链接?
https://developer.chrome.com/devtools/docs/heap-profiling-dom-leaks
通过跟踪窗口对象的路径,可以观察到它 分离的DOM树被引用为DOM的本机链接 存储在分离窗口属性中的包装器。为了证实这一点,做 以下......
任何帮助将不胜感激!
答案 0 :(得分:0)
在您链接的示例中,有一个名为“ detached”的变量正在窗口对象上创建为全局变量。
window.detached
然后,它们继续生成带有许多子项和额外数据的整个DOM树,并将该引用存储在window.detached变量中。但是,它实际上并没有安装到DOM中。
您引用的块只是指出,如果您生成的任何dom节点仍然具有指向它们的活动引用(在这种情况下,引用是window.detached),那么它们将不会是垃圾收集。
他们要指出这一点很麻烦,因为有些人可能希望您一旦从DOM中卸载一棵节点树,它们就会成为GC的候选对象。他们指出,真正重要的是是否仍然可以引用该项目。如果没有,它将被GC处理。否则,它会徘徊。