vue里,mounted后如何监听某个div高度的变化?

在mounted后可以获取子组件的某个div的高度,这个div的高度发生变化后,如何在vue里监听到?
data(){
return{
belowHeight:''
}
},
mounted(){
this.belowHeight=document.body.clientHeight-document.getElementById('header-nav').clientHeight
}
header-nav这个div高度变化后,如何同步更改父组件data里belowHeight的值?
header-nav高度的变化是由于子组件header-nav里点击一个按钮后v-show的切换后多出一个div.
DIEA
浏览 19597回答 2
2回答

月关宝盒

mounted后再去获取div的高度,这个是非响应的。还是将子组件里针对触发div高度变化的事件$emit到父组件里,然后父组件接收到这个事件再去操作data里belowHeight的值。用vux去管理应该更方便些。

一只斗牛犬

header-nav这个div高度变化,有没有什么触发的事件?如果有,就上面获取高度,变成一个方法,触发了事件后就调用这个方法。最好说下,这个div高度,在什么情况下才变化?
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript