原理:使用webAPI 的 MutationObserver 属性监控根元素内的dom数量,如果没有dom则白屏
// 跟节点
const targetNode = document.getElementById('container')
if (targetNode) {
const config = { childList: true } // 观察器的配置(需要观察什么变动)
const callback = function (mutationsList) {
console.log(mutationsList, '11111')
// 当观察到变动时执行的回调函数
for (let i = 0; i < mutationsList.length; i++) {
let mutation = mutationsList[i]
if (mutation.type === 'childList'&&targetNode?.children?.length === 0) {
console.log('白屏')
break
}
}
}
if (window?.MutationObserver) {
const observer = new MutationObserver(callback)
observer.observe(targetNode, config)
}
}