前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Vue之循环遍历

Vue之循环遍历

作者头像
yuanshuai
发布2022-08-22 16:45:08
发布2022-08-22 16:45:08
1.7K00
代码可运行
举报
文章被收录于专栏:一只程序原一只程序原
运行总次数:0
代码可运行

Vue循环遍历

一、v-for遍历数组和对象

1.1.遍历数组不显示index(下标)

代码语言:javascript
代码运行次数:0
运行
复制
        <div id="app">
            <ul>
                <li v-for="item in colors">{{item}}</li>
            </ul>
        </div>
        <script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
        <script type="text/javascript">
            const app = new Vue({
                el: '#app',
                data: {
                    colors: ['red','yellow','blue','green']
                }
            })
        </script>

1.2.遍历数组并显示index(下标)

代码语言:javascript
代码运行次数:0
运行
复制
        <div id="app">
            <ul>
                <li v-for="(item,index) in colors">
                    {{index+1}}.{{item}}
                </li>
            </ul>
        </div>

1.3.遍历对象显示value值

代码语言:javascript
代码运行次数:0
运行
复制
        <div id="app">
            <ul>
                <li v-for="value in obj">{{value}}</li>
            </ul>
        </div>
        <script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
        <script type="text/javascript">
            const app = new Vue({
                el: '#app',
                data: {
                    obj: {
                        name: 'sunny',
                        age: 18,
                        sex: 'male'
                    }
                }
            })
        </script>

只有一个变量时,该变量对应对象的value值

1.4.遍历对象显示key和value

代码语言:javascript
代码运行次数:0
运行
复制
        <div id="app">
            <ul>
                <li v-for="(value,key) in obj">{{key}}:{{value}}</li>
            </ul>
        </div>

有两个变量时,第一个变量代表value值,第二个变量代表key

1.5.遍历对象显示key、value和index

代码语言:javascript
代码运行次数:0
运行
复制
        <div id="app">
            <ul>
                <li v-for="(value,key,index) in obj">
                    {{index}}-{{key}}:{{value}}
                </li>
            </ul>
        </div>

二、列表案例(v-for、v-bind:、@click)

电影列表案例 默认第一个li为红色,再点击哪个li,该li字体颜色变红

思路:初始化currentIndex为0,用作记录第0个li的位置,后点击哪个li,就把该li的位置赋给cuurentIndex

1.用v-bind的对象语法动态绑定class,当currentIndex和当前li的index相同时,才给该li添加active类名。默认的currentIndex为0,只有第一个index为0的li才被添加上active的类名,则实现第一个li字体为红色的默认样式。

2.利用点击事件,动态给currentIndex赋该li的index值,则点击哪个li,那个li就会被添加上active的类名,完成最终效果

代码语言:javascript
代码运行次数:0
运行
复制
        <div id="app">
            <ul>
                <li v-for="(item,index) in movies" :class="{active:currentIndex===index}" @click="liClick(index)">
                    {{item}}
                </li>
            </ul>
        </div>
        <script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
        <script type="text/javascript">
            const app = new Vue({
                el: '#app',
                data: {
                    currentIndex: 0,
                    movies: ['大理寺日志','进击的巨人','罗小黑战记','一人之下']
                },
                methods: {
                    liClick(index){
                        this.currentIndex = index;
                    }
                }
            })
        </script>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021.11.30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Vue循环遍历
    • 一、v-for遍历数组和对象
      • 1.1.遍历数组不显示index(下标)
      • 1.2.遍历数组并显示index(下标)
      • 1.3.遍历对象显示value值
      • 1.4.遍历对象显示key和value
      • 1.5.遍历对象显示key、value和index
    • 二、列表案例(v-for、v-bind:、@click)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档