Sto*_*sdg 7 javascript vue.js vue-component vuejs2
我需要获取图像/元素的高度,这就是我所做的:
mounted() {
this.infoHeight = this.$refs.info.clientHeight + 'px';
}
Run Code Online (Sandbox Code Playgroud)
当我在热重载时保存它时,它会工作,它会获得正确的高度,但是当我刷新页面时,它会返回较小/错误的值。我也试了一下created()
,也是一样的。在其他情况下,它甚至不返回任何内容。
更新(临时解决方案?)
mounted() {
setTimeout(() => this.infoHeight = this.$refs.info.clientHeight + 'px', 100);
}
Run Code Online (Sandbox Code Playgroud)
我也尝试过使用window.addEventListener('load', () => //todo)
,但在某些组件上它有效,而在其他组件上则无效。
尝试使用$nextTick
which 将在 DOM 更新后执行。
mounted() {
this.$nextTick(() => { this.infoHeight = this.$refs.info.clientHeight + 'px' });
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3356 次 |
最近记录: |