javascript - 请问vuejs如何获取组件使用slot插入后的高度。
PHPz
PHPz 2017-04-11 11:27:33
[JavaScript讨论组]

在某个组件中我使用到以下代码:

然后我在该组件的mounted状态下获取其高度,总是为0:

mounted () {
    console.log(this.$refs.aa.offsetHeight)
}

原因感觉可能是mounted状态下还没有完成代码的插入吧,所以获取的是插入前的高度。
而目前需要获取该p插入相应代码块后的高度,直接延迟1秒执行代码虽然可以解决问题但并不是最好的办法,求大神指点。

PHPz
PHPz

学习是最好的投资!

全部回复(3)
ringa_lee

已解决,利用了setTimeOut来改变代码的执行顺序:

mounted () {

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

}

PHPz
    mounted () {
        this.$nextTick(() => {
            console.log(this.$refs.wrapper.clientHeight)
        })
    }
伊谢尔伦

写指令,在指令的update钩子函数里面获取

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号