v-for的使用,遍历数组、对象、数字、字符串等类型

遍历数组

html 复制代码
<div id="app">
  <ul>
    <li v-for="(item, index) in items" :key="index">{{ item }}</li>
    <!-- 结果:
      <li>Apple</li>
      <li>Banana</li>
      <li>Cherry</li>
    -->
  </ul>
</div>

<script>
new Vue({
  el: '#app',
  data: {
    items: ['Apple', 'Banana', 'Cherry']
  }
});
</script>

遍历对象

html 复制代码
<div id="app">
  <ul>
    <li v-for="(value, key, index) in user" :key="index">{{ key }}: {{ value }}</li>
    <!-- 结果:
      <li>name: John Doe</li>
      <li>age: 30</li>
      <li>occupation: Developer</li>
    -->
  </ul>
</div>

<script>
new Vue({
  el: '#app',
  data: {
    user: {
      name: 'John Doe',
      age: 30,
      occupation: 'Developer'
    }
  }
});
</script>

遍历数字

html 复制代码
<div id="app">
  <ul>
    <li v-for="n in 5" :key="n">{{ n }}</li>
    <!-- 结果:
      <li>1</li>
      <li>2</li>
      <li>3</li>
      <li>4</li>
      <li>5</li>
    -->
  </ul>
</div>

<script>
new Vue({
  el: '#app'
});
</script>

遍历字符串

html 复制代码
<div id="app">
  <ul>
    <li v-for="(char, index) in message" :key="index">{{ char }}</li>
    <!-- 结果:
      <li>H</li>
      <li>e</li>
      <li>l</li>
      <li>l</li>
      <li>o</li>
    -->
  </ul>
</div>

<script>
new Vue({
  el: '#app',
  data: {
    message: 'Hello'
  }
});
</script>

在 Vue 2 中,v-for 指令可以用于遍历数组、对象、数字和字符串。以下是一些示例,展示了如何使用 v-for 来遍历不同类型的数据。

遍历数组

html 复制代码
<div id="app">
  <ul>
    <li v-for="(item, index) in items" :key="index">{{ item }}</li>
  </ul>
</div>

<script>
new Vue({
  el: '#app',
  data: {
    items: ['Apple', 'Banana', 'Cherry']
  }
});
</script>

遍历对象

html 复制代码
<div id="app">
  <ul>
    <li v-for="(value, key, index) in user" :key="index">{{ key }}: {{ value }}</li>
  </ul>
</div>

<script>
new Vue({
  el: '#app',
  data: {
    user: {
      name: 'John Doe',
      age: 30,
      occupation: 'Developer'
    }
  }
});
</script>

遍历数字

html 复制代码
<div id="app">
  <ul>
    <li v-for="n in 5" :key="n">{{ n }}</li>
  </ul>
</div>

<script>
new Vue({
  el: '#app'
});
</script>

遍历字符串

html 复制代码
<div id="app">
  <ul>
    <li v-for="(char, index) in message" :key="index">{{ char }}</li>
  </ul>
</div>

<script>
new Vue({
  el: '#app',
  data: {
    message: 'Hello'
  }
});
</script>

总结

  • 遍历数组 :使用 v-for="(item, index) in items",其中 item 是数组元素,index 是索引。
  • 遍历对象 :使用 v-for="(value, key, index) in object",其中 value 是对象的值,key 是对象的键,index 是索引。
  • 遍历数字 :使用 v-for="n in number",其中 n 是从 1 到 number 的数字。
  • 遍历字符串 :使用 v-for="(char, index) in string",其中 char 是字符串的字符,index 是索引。
相关推荐
代码煮茶13 小时前
Vite 5.0 新特性深度解析:更快、更干净、更未来的前端构建利器
vue.js
Pu_Nine_917 小时前
IntersectionObserver 详解:封装 Vue 指令实现图片懒加载
前端·javascript·vue.js·性能优化
前端那点事18 小时前
Vue nextTick 超全解析|作用、使用场景、底层原理、Vue2/Vue3区别
前端·vue.js
前端那点事18 小时前
Vue面试高频:子组件能直接修改父组件数据吗?单向数据流原理+正确写法全覆盖
前端·vue.js
前端那点事18 小时前
为什么 Vue 的 template 标签不能用 v-show?底层机制+踩坑复盘+生产级解决方案
前端·vue.js
北风toto19 小时前
为什么 IntelliJ IDEA Community 无法开发 Vue?——附解决方案
java·vue.js·intellij-idea
跟着珅聪学java20 小时前
Element UI 的 Tabs 标签页开发教程
javascript·vue.js·elementui
jiayong2320 小时前
前端面试题库 - Vue框架篇
前端·vue.js·面试
三*一21 小时前
Mapbox GL JS 前端多边形分割实战:从踩坑到优雅实现
开发语言·前端·javascript·vue.js
xChive21 小时前
前端请求取消:用 AbortController 从 fetch 到 axios
前端·vue.js·axios·fetch·abortcontroller