为了账号安全,请及时绑定邮箱和手机立即绑定

请问vuejs如何获取组件使用slot插入后的高度。

请问vuejs如何获取组件使用slot插入后的高度。

千巷猫影 2018-10-17 15:18:20
在某个组件中我使用到以下代码:<div ref='aa'>     <slot name='content'></slot></div>然后我在该组件的mounted状态下获取其高度,总是为0:mounted () {     console.log(this.$refs.aa.offsetHeight) }原因感觉可能是mounted状态下还没有完成代码的插入吧,所以获取的是插入前的高度。而目前需要获取该div插入相应代码块后的高度,直接延迟1秒执行代码虽然可以解决问题但并不是最好的办法,求大神指点。
查看完整描述

1 回答

?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

利用了setTimeOut来改变代码的执行顺序:

mounted () {

let self = thissetTimeout(function () {
    console.log(self .$refs.aa.offsetHeight)
}, 0)

}


查看完整回答
反对 回复 2018-11-10
  • 1 回答
  • 0 关注
  • 1456 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信