vue.js如何遍历map?

vue.js如何遍历map?

vue.js中可以使用v-for来遍历Map对象。

通常情况下都是使用 v-for 遍历 List 或 Array ,但 v-for 对于 Map 遍历也是支持的

遍历方式如下:

v-for="(value, key) in mapObject" :key="key"

其中key为键,value为对应的值

拓展:v-for指令

在Vue.js中,我们可以使用v-for指令基于源数据重复渲染元素。也就是说可以使用v-for指令实现遍历功能,包括遍历数组、对象、数组对象等。

1、遍历数组

代码示例如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <!--引入vue.js-->
    <script src="node_modules/vue/dist/vue.js" ></script>
    <script>
       window.onload=function(){
           // 构建vue实例
           new Vue({
               el:"#my",// el即element,表示挂载的元素,不能挂载在HTML和body元素上面
               data:{
                      array:[1,2,3,4],//数组
               },
               // 方法
               methods:{

               }
           })
       }
    </script>
</head>
<body>
    <div id="my">
                <div>
                    <h1>下面的使用v-for遍历数组</h1>
                    <div>
                          <h1>只显示值</h1>
                          <ul>
                              <li v-for=" v in array">{{v}}</li>
                          </ul>
                      </div>
                      <div>
                        <h1>显示值和索引</h1>
                        <ul>
                            <li v-for=" (v,index) in array">值:{{v}},对应的索引:{{index}}</li>
                        </ul>
                      </div>
                </div>
    </div>
</body>
</html>

其中index表示数组的索引

效果如下图所示:

1.png

注意:最新的版本中已经移除了$index获取数组索引的用法

2、遍历对象

代码示例如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>使用v-for指令遍历对象</title>
    <!--引入vue.js-->
    <script src="node_modules/vue/dist/vue.js" ></script>
    <script>
       window.onload=function(){
           // 构建vue实例
           new Vue({
               el:"#my",// el即element,表示挂载的元素,不能挂载在HTML和body元素上面
               data:{
                      obj:{name:"tom",age:3},//对象
               },
               // 方法
               methods:{

               }
           })
       }
    </script>
</head>
<body>
    <div id="my">
          <div>
              <h1>下面的使用v-for遍历对象</h1>
              <div>
                    <h1>只显示值</h1>
                    <ul>
                        <li v-for=" v in obj">{{v}}</li>
                    </ul>
                </div>
                <div>
                  <h1>显示值和键</h1>
                  <ul>
                      <li v-for=" (v,index) in obj">值:{{v}},对应的键:{{index}}</li>
                  </ul>
                </div>
          </div>
    </div>
</body>
</html>

效果如下图所示:

3.png

四、遍历数组对象

代码示例如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>使用v-for指令遍历数组对象</title>
    <!--引入vue.js-->
    <script src="node_modules/vue/dist/vue.js" ></script>
    <script>
       window.onload=function(){
           // 构建vue实例
           new Vue({
               el:"#my",// el即element,表示挂载的元素,不能挂载在HTML和body元素上面
               data:{
                      lists:[
                          {name:"kevin",age:23},
                          {name:"tom",age:25},
                          {name:"joy",age:28}
                      ]
               },
               // 方法
               methods:{

               }
           })
       }
    </script>
</head>
<body>
    <div id="my">      
          <div>
                <h1>下面的使用v-for遍历数组对象</h1>
                <div>
                      <h1>只显示值</h1>
                      <ul>
                          <li v-for=" list in lists">name值:{{list.name}},age值:{{list.age}}</li>
                      </ul>
                  </div>
                  <div>
                    <h1>显示值和键</h1>
                    <ul>
                        <li v-for=" (list,index) in lists">name值:{{list.name}},age值:{{list.age}}, 对应的键:{{index}}</li>
                    </ul>
                  </div>
            </div>
    </div>
</body>
</html>

效果如下图所示:

4.png

更多web前端学习知识,请查阅 HTML中文网 !!

以上就是vue.js如何遍历map?的详细内容,更多请关注html中文网其它相关文章!

赞(0) 打赏
未经允许不得转载:html中文网首页 » Vue.js 答疑

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

前端开发相关广告投放 更专业 更精准

联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏