Vue常用指令-列表渲染

v-for

  • 可以基于一个数组来渲染一个列表,还可以通过一个对象的属性来迭代数据
  • 需要使用item in items形式的特殊语法
  • items是源数据数组,而item则是被迭代的数据元素别名
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>v-for</title>
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>
    <div id="app">
        <!-- 遍历数组 -->
        <div v-for="item in list">{{item}}</div>
        <!-- 遍历数组并提取索引 -->
        <li v-for="(item, index) in list">
            {{index}} - {{item}}
        </li>
        <!-- 迭代对象 -->
        <li v-for="item of items">{{item}}</li>
        <!-- 提取对象的键 -->
        <li v-for="(item, key) of items">
            {{key}}: {{item}}
        </li>
        <!-- 提取对象的索引 -->
        <li v-for="(item, key, index) of items">
            {{index}}: {{key}}: {{item}}
        </li>
    </div>
</body>
</html>

<script>
    var vm = new Vue({
        el: "#app",
        data: {
            list: [1, 2, 3], 
            items:{
                one: '第一组',
                two: '第二组',
                three: '第三组'
            }
        }
    })
</script>

遍历的时候in和of的区别:

  • in 是通用的,遍历的作用
  • of 是只能遍历一些特定的对象,重写了迭代器的才可以用