javascript - 请问vuejs如何获取组件使用slot插入后的高度。
本文介绍了javascript - 请问vuejs如何获取组件使用slot插入后的高度。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
在某个组件中我使用到以下代码:
<div ref='aa'>
<slot name='content'></slot>
</div>
然后我在该组件的mounted状态下获取其高度,总是为0:
mounted () {
console.log(this.$refs.aa.offsetHeight)
}
原因感觉可能是mounted状态下还没有完成代码的插入吧,所以获取的是插入前的高度。
而目前需要获取该div插入相应代码块后的高度,直接延迟1秒执行代码虽然可以解决问题但并不是最好的办法,求大神指点。
解决方案
已解决,利用了setTimeOut来改变代码的执行顺序:
mounted () {
let self = this
setTimeout(function () {
console.log(self .$refs.aa.offsetHeight)
}, 0)
}
这篇关于javascript - 请问vuejs如何获取组件使用slot插入后的高度。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文