Vue.js 教程

Vue.js 列表渲染(渲染对象)

前面介绍了 v-for  指令的基础用法,以及使用 v-for 指令根据数组渲染列表。当然,你也可以用 v-for 来遍历一个对象的属性。用法如下:

(1)仅仅遍历对象的值,如下:

<ul>
    <li v-for="value of user">
        {{ value }}
    </li>
</ul>

或者

<ul>
   <li v-for="(value) of user">
       {{ value }}
   </li>
</ul>

(2)遍历对象的属性名和属性值,如下:

<ul>
   <li v-for="(value,key) of user" :key="key">
       {{ key }} - {{ value }}
   </li>
</ul>

(3)遍历对象的属性名、属性值和下标值,如下:

<ul>
   <li v-for="(value,key,index) of user" :key="key">
       {{ index }} - {{ key }} - {{ value }}
   </li>
</ul>

注意:

  • user  待遍历的对象

  • value  遍历对象属性值

  • key  遍历对象属性名

  • index  遍历对象属性下标值

完整示例

<html>
<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>Vue</title>
   <!-- 使用 CDN 引入 Vue 库 -->
   <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>

   <div id="app">
       <ul>
           <!-- key 为对象的属性名 -->
           <!-- value 为对象属性的值 -->
           <!-- index 为索引,从 0 开始 -->
           <!-- 注意:value 和 key 名称可以根据自己需要修改,如:value 改为 v -->
           <!-- 当然,也可以仅提供 value,或者 仅提供 key,如:v-for="value of user" -->
           <li v-for="(value,key,index) of user" :key="key">
               {{ index }} - {{ key }} - {{ value }}
           </li>
       </ul>
   </div>

   <script type="text/javascript">
       var app = new Vue({
           el: "#app",
           data: {
               user: {
                   id: 1000,
                   name: "ZhangSan",
                   email: "zhangsan@qq.com"
               }
           }
       });
   </script>

</body>
</html>

运行效果图:

注意:v-for 在遍历对象时,会按 Object.keys() 的结果遍历,但是不能保证它的结果在不同的 JavaScript 引擎下都一致。

说说我的看法
全部评论(
没有评论
关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号