你可以使用Vue的$nextTick()方法来确保DOM已经渲染完成,然后使用querySelectorAll()方法获取多个元素,再循环遍历计算它们的宽度。代码示例如下:

<template>
  <div ref="elements">
    <div class="element"></div>
    <div class="element"></div>
    <div class="element"></div>
  </div>
</template>

<script>
export default {
  mounted() {
    this.$nextTick(() => {
      const elements = this.$refs.elements.querySelectorAll('.element');
      elements.forEach((element) => {
        const width = element.offsetWidth;
        console.log(`Element width: ${width}px`);
      });
    });
  },
};
</script>

在上面的示例中,我们首先在模板中用ref属性标识出包含多个元素的父元素。然后在mounted()钩子函数中使用$nextTick()方法确保DOM已经渲染完成。接着使用querySelectorAll()方法获取所有.element元素,再在循环遍历中计算它们的宽度并输出到控制台。

获取多个元素里面的宽度 在vue里面写 并且是在渲染完成之后

原文地址: https://www.cveoy.top/t/topic/7sq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录