【vue组件中,多个子组件使用window.onresize,其中一个失效?】

175 阅读1分钟

在vue组件中,偶然在多个子组件中都使用到了window.onresize来监听浏览器窗口变化。 但奇怪的是,其中一个的onresize是生效的,但是另一个却无效。 经过查阅,发现是以下原因:

多个子组件中都存在window.onresize时,后一个会把前一个覆盖,导致之前的onresize都失效。

解决办法是,使用window.addEventListener替换即可。

window.addEventListener('resize', () =>{
    console.log('1')
})

特此记录,以供后续使用。