当前位置:首页 > VUE

vue如何实现列表渲染

2026-02-22 22:02:12VUE

Vue 列表渲染的实现方法

Vue 提供了 v-for 指令来实现列表渲染,支持遍历数组、对象或数字范围。

遍历数组

使用 v-for 遍历数组时,可以获取当前项和索引:

<ul>
  <li v-for="(item, index) in items" :key="item.id">
    {{ index }} - {{ item.name }}
  </li>
</ul>

遍历对象

遍历对象时可以获取属性值、键名和索引:

<ul>
  <li v-for="(value, key, index) in object" :key="key">
    {{ index }}. {{ key }}: {{ value }}
  </li>
</ul>

遍历数字范围

v-for 也可以直接遍历数字范围:

<span v-for="n in 10">{{ n }}</span>

使用 key 属性

为每个渲染项添加唯一的 key 可以提高渲染效率并避免状态混乱:

<div v-for="item in items" :key="item.id">
  <!-- 内容 -->
</div>

在组件上使用 v-for

在自定义组件上使用 v-for 时,需要显式传递数据:

<my-component
  v-for="(item, index) in items"
  :key="item.id"
  :item="item"
  :index="index">
</my-component>

数组更新检测

Vue 能检测以下数组方法触发的变更:

  • push()
  • pop()
  • shift()
  • unshift()
  • splice()
  • sort()
  • reverse()

对于非变更方法(如 filter()、concat()、slice()),可以用新数组替换旧数组:

this.items = this.items.filter(item => item.isActive)

显示过滤/排序结果

不改变原始数据的情况下,可以使用计算属性:

vue如何实现列表渲染

computed: {
  filteredItems() {
    return this.items.filter(item => item.isActive)
  }
}

分享给朋友:

相关文章

vue如何实现冒泡

vue如何实现冒泡

Vue 实现冒泡排序的步骤 在 Vue 中实现冒泡排序,可以通过数据绑定和计算属性来动态展示排序过程。以下是一个完整的实现示例。 示例代码 <template> <div>…

vue实现无线滚动列表

vue实现无线滚动列表

无限滚动列表的实现方法 无限滚动列表通常用于展示大量数据,通过动态加载数据减少初始渲染压力。以下是基于Vue的实现方法: 使用Intersection Observer API监听滚动 Inters…

vue如何实现两栏布局

vue如何实现两栏布局

使用Flexbox实现两栏布局 Flexbox是CSS3中强大的布局方式,可以轻松实现两栏布局。在Vue中可以直接在组件的style标签中使用。 <template> <div…

vue如何实现重新实现主题

vue如何实现重新实现主题

Vue 主题切换的实现方法 使用 CSS 变量动态切换主题 定义主题相关的 CSS 变量,通过修改这些变量实现主题切换。在根元素(如 :root)中定义默认主题的变量,在特定类名下定义其他主题的变量。…

react如何实现分页

react如何实现分页

实现分页的基本思路 在React中实现分页通常需要以下几个核心步骤:管理当前页码状态、计算分页数据、渲染分页控件。以下是一个典型的分页实现方法。 管理分页状态 使用React的useState钩子来…

vue如何实现级联

vue如何实现级联

实现级联选择器的基本方法 在Vue中实现级联选择器通常使用现成的组件库或自定义组件。以下是两种常见方式: 使用Element UI的Cascader组件 安装Element UI后,直接使用el-c…