当前位置:首页 > VUE

vue 实现循环

2026-02-10 13:52:29VUE

循环渲染列表数据

在 Vue 中,可以通过 v-for 指令实现循环渲染。v-for 可以遍历数组或对象,并为每个元素生成对应的 DOM 节点。

基本语法:

vue 实现循环

<template>
  <div>
    <!-- 遍历数组 -->
    <ul>
      <li v-for="(item, index) in items" :key="index">
        {{ item }}
      </li>
    </ul>

    <!-- 遍历对象 -->
    <ul>
      <li v-for="(value, key) in object" :key="key">
        {{ key }}: {{ value }}
      </li>
    </ul>
  </div>
</template>

<script>
export default {
  data() {
    return {
      items: ['Apple', 'Banana', 'Orange'],
      object: {
        name: 'Vue',
        version: '3.x'
      }
    };
  }
};
</script>

使用 key 提升性能

v-for 必须绑定 :key,以便 Vue 高效更新 DOM。推荐使用唯一标识(如 id),避免直接使用 index(除非列表静态)。

<template>
  <div v-for="user in users" :key="user.id">
    {{ user.name }}
  </div>
</template>

<script>
export default {
  data() {
    return {
      users: [
        { id: 1, name: 'Alice' },
        { id: 2, name: 'Bob' }
      ]
    };
  }
};
</script>

循环渲染组件

v-for 也可用于循环渲染子组件,需通过 props 传递数据。

vue 实现循环

<template>
  <div>
    <user-item 
      v-for="user in users" 
      :key="user.id" 
      :user="user" 
    />
  </div>
</template>

<script>
import UserItem from './UserItem.vue';

export default {
  components: { UserItem },
  data() {
    return {
      users: [
        { id: 1, name: 'Alice' },
        { id: 2, name: 'Bob' }
      ]
    };
  }
};
</script>

条件与循环结合

使用 v-ifv-for 时,注意优先级:v-for 高于 v-if。推荐通过计算属性过滤数据,而非直接混合使用。

<template>
  <div>
    <div v-for="num in evenNumbers" :key="num">
      {{ num }}
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return {
      numbers: [1, 2, 3, 4, 5]
    };
  },
  computed: {
    evenNumbers() {
      return this.numbers.filter(num => num % 2 === 0);
    }
  }
};
</script>

遍历数字范围

v-for 可遍历数字范围,生成固定次数的循环。

<template>
  <div>
    <span v-for="n in 5" :key="n">
      {{ n }}
    </span>
  </div>
</template>

标签: vue
分享给朋友:

相关文章

vue实现点击页面切换

vue实现点击页面切换

实现点击页面切换功能 在Vue中实现点击页面切换功能,可以通过路由跳转或组件动态渲染两种方式完成。以下是具体实现方法: 使用Vue Router实现页面跳转 安装Vue Router后,在项目中配置…

vue 实现

vue 实现

Vue 实现的基本步骤 安装 Vue.js 可以通过 npm 或 CDN 引入。使用 npm 安装适合大型项目,CDN 适合快速原型开发。 npm install vue 在 HTML 文件中引入…

vue全选实现

vue全选实现

Vue 全选实现方法 在 Vue 中实现全选功能通常涉及数据绑定和事件处理。以下是几种常见的实现方式: 基础实现方式 <template> <div> <…

vue实现mui

vue实现mui

使用 Vue 实现 MUI(Material-UI)风格的界面 Vue 本身不直接提供 MUI(Material Design)组件,但可以通过集成第三方库或手动实现来达到类似效果。以下是几种常见方法…

vue实现flbook

vue实现flbook

Vue 实现类似 Flbook 的翻页效果 要实现类似 Flbook 的翻页效果,可以使用 Vue 结合 CSS 动画和 JavaScript 事件处理。以下是实现方法: 安装依赖 需要安装 vue…

vue 实现长按

vue 实现长按

实现长按功能的基本思路 在Vue中实现长按功能,通常需要监听元素的mousedown或touchstart事件,启动一个计时器。当用户按住元素超过设定的时间阈值时,触发长按回调函数。如果在时间阈值内触…