Vue 如何获取v-for 遍历出来的元素

<template>
    <div id="app" class="app">
        <div class="container">
            <div v-for="(item, index) in items">
                {{ item.name }}
            </div>
        </div>
    </div>
</template>

<script>
export default {
    name: 'app',
    data () {
        return {
            items: [
                {
                    name: 'a'
                },
                {
                    name: 'b'
                },
                {
                    name: 'c'
                },
                {
                    name: 'd'
                },
                {
                    name: 'e'
                },
            ]
        }
    },
    methods: {
        getWidth () {
            //  获取遍历 this.items 每个div 元素的宽度  offsetWidth;
            this.items.forEach(el => {
                // .....   怎么做?
            });
        }
    },
    mounted () {
        this.getWidth();
    }
}
</script>



只要能获取遍历出来的目标元素 什么都好说。 好像做不了?

阅读 6.7k
2 个回答

mounted 那里 用 this.$nextTick(()=>{this.getWidth()}) 这样试试?

新手上路,请多包涵

你这个是怎么做的,贴个代码我看看,我现在也需要获取到v-for节点的宽度

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题