当前位置:   article > 正文

vue 监听元素高度变化

vue监听元素高度变化

要监听元素高度变化,你可以使用 Vue.js 的 $watch 方法。

首先,在你的 Vue 组件的 data 中声明一个变量来存储元素的高度:

  1. data() {
  2. return {
  3. elementHeight: 0
  4. }
  5. }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

然后,在 mounted 钩子函数中使用 $watch 方法监听 elementHeight 变量:

  1. mounted() {
  2. this.$watch('elementHeight', newHeight => {
  3. // 当 elementHeight 变化时,这里的代码将会执行
  4. console.log(`元素的新高度是:${newHeight}`)
  5. })
  6. }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

在你的模板中,你可以使用元素的 offsetHeight 属性来获取它的高度:

  1. <template>
  2. <div ref="element" @click="updateHeight">点我更新高度</div>
  3. </template>
  4. <script>
  5. export default {
  6. methods: {
  7. updateHeight() {
  8. this.elementHeight = this.$refs.element.offsetHeight
  9. }
  10. }
  11. }
  12. </script>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

现在,当你点击这个元素时,你就可以在控制台看到元素的新高度了。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号