<style>
.active{
color: red;
}
div a{
display: block;
}
</style>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>

<body>
<!--
1 循环除数据中的菜单选项
<li v-for="(v,i) in newInfo"> v表示数组newInfo中的所有数据
因此要获取菜单直接 v.typeName

2 获取当前点击的是第几个菜单选项
因此有点击事件 @click="index=i" 可以知道当前点击的是第几个元素的下标 赋值给index

3 第一个item表示的 newInfo下的所有数据
第一个info表示item.newList下的所有数据

4此时已经将所有的数据都已经展示出来了 如何只展示相关的数据
利用v-show结合索引值 index的菜单索引 是否 与内容索引i相等 v-show="index===i"

5给当前点击的菜单添加激活类
:class="{active:index===i}" 如果active等于true 就展示添加激活类
-->
<div id="myApp">
<!-- 菜单选项 -->
<li v-for="(v,i) in newInfo" @click="index=i" :class="{active:index===i}">
{{v.typeName}}
</li>

<!-- 内容 -->
<div v-for="(item,i) in newInfo" v-show="index===i">
<a :href="info.url" v-for="info in item.newList">{{ info.title}}</a>
</div>
</div>
</body>

<script>
var vm = new Vue({
el: '#myApp',
// data应该是一个对象哦
data: {
index: 0, //表示索引值
newInfo: [{
typeName: "军事",
newList: [{
title: "美国发誓“毫不留情”对抗伊朗",
url: "http://news.ifeng.com/a/20181107/60149207_0.shtml?_zbs_baidu_news"
},
{
title: "普京主动送给中国一大宝贝 白宫:必须制止",
url: "http://hot.qianyan001.com/20181108/787511_1.html"
}
]
},
{
typeName: "娱乐",
newList: [{
title: "众星出席时装电影盛典 周迅赵薇baby杨幂唐嫣同框",
url: "http://fun.youth.cn/gnzx/201811/t20181108_11778380.htm"
},
{
title: "张艺兴发博回应海外人气质疑:榜单见不如舞台见",
url: "http://new.qq.com/omn/20181107/20181107A0UQZ9.html"
},
{
title: "昆凌晒照带儿女秋日游玩 周杰伦委屈评论:也不带我",
url: "http://ent.ifeng.com/a/20181108/43134878_0.shtml"
}
]
}, {
typeName: "财经",
newList: [{
title: "房价真跌了?2018年10月热点城市“房价地图”1",
url: "http://new.qq.com/zt/template/?id=FIN2018100800260300"
},
{
title: "房价真跌了?2018年10月热点城市“房价地图”2",
url: "http://new.qq.com/zt/template/?id=FIN2018100800260300"
},
{
title: "房价真跌了?2018年10月热点城市“房价地图”3",
url: "http://new.qq.com/zt/template/?id=FIN2018100800260300"
}
]
}
]
}
})
</script>

vue之tab切换的更多相关文章

  1. vue 实现tab切换动态加载不同的组件

    vue 实现tab切换动态加载不同的组件 使用vue中的is特性来加载不同的组件.具体看如下代码:这个功能对于vue比较复杂的页面可以使用上,可以把一个页面的功能拆分出来,使代码更简单.使用方式具体看 ...

  2. vue封装tab切换

    vue封装tab切换 预览: 第一种 通过父传子标题,子传父事件 子组件 <template> <div class='app'> <div class="ta ...

  3. vue实现tab切换功能

    最近用vue做一个页面的tab功能,经过一查找资料,没用路由,也没用动态组件,完美实现了tab切换功能,效果如下 下面是代码实现,这是模板 <article id="example&q ...

  4. VUE 实现tab切换页面效果

    一 163邮箱登录tab切换 <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...

  5. vue实现tab切换

    需要弄类似tab切换的功能就是一个点击切换上一页下一页的页面 找到这个获得灵感 <!DOCTYPE html> <html lang="en"> <h ...

  6. vue -vantUI tab切换时 list组件不触发load事件解决办法

    最近由于公司项目需要,用vue写了几个简单的页面.用到了vantUI List 列表 瀑布流滚动加载,用于控制长列表的展示 当列表即将滚动到底部时,会触发事件并加载更多列表项. (页面加载完成后默认会 ...

  7. Vue如何tab切换高亮最简易方法

    以往我们实现tab切换高亮通常是循环遍历先把所有的字体颜色改变为默认样式,再点亮当前点击的选项,而我们在vue框架中实现tab切换高亮显示并不需要如此,只需要将当前点击选项的index传入给一个变量, ...

  8. vue实现tab切换功能精简版

    <template> <div> <p class="tabs" v-for="(list,index) in lists" :c ...

  9. vue类似tab切换的效果,显示和隐藏的判断。

    两者切换,动态显示对应的列表详情. 通过v-show的判断 数据驱动

随机推荐

  1. Nginx之HTTPS

    Nginx之HTTPS 1. HTTPS安全证书基本概述 为什么需要使用HTTPS,因为HTTP不安全,当我们使用http网站时,会遭到劫持和篡改,如果采用https协议,那么数据在传输过程中是加密的 ...

  2. php对微信支付回调处理的方法(合集)

    支付完成后,微信会把相关支付结果和用户信息发送给商户,商户需要接收处理,并返回应答. 对后台通知交互时,如果微信收到商户的应答不是成功或超时,微信认为通知失败,微信会通过一定的策略定期重新发起通知,尽 ...

  3. 【新人填坑008】django升级2.x后报'WSGIRequest' object has no attribute 'session',

    1.X 到2.x后中间件定义的名字也有所不同 改一下就好了 在setting文件中将原先的 MIDDLEWARE_CLASS 改成MIDDLEWARE 如果还运行不成功  注释掉标白线的那一行 删掉也 ...

  4. axel 多线程下载工具

    yum install axel-2.4-9.el7.x86_64 -y # 选项 --max-speed=x , -s x 最高速度x --num-connections=x , -n x 连接数x ...

  5. PyCharm设置完自动上传,却不会自动上传任何内容

    Upload changed files automatically to the default server 选择了 Always 下面有一个提示 Default server or group ...

  6. 201871010116-祁英红《面向对象程序设计(java)》第十五周学习总结

    博文正文开头格式:(2分) 项目 内容 <面向对象程序设计(java)> https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://ww ...

  7. ViewTool Hollong BLE Sniffer Support Linux OS Introduction

    ViewTool Hollong BLE Sniffer Support Linux OS Introduction 1. Download Software:http://www.viewtool. ...

  8. 基于Node 的http转发demo,项目中请使用express+http-proxy-middleware

    var http = require("http"); var data = ''; function getData() { const options = { host: 'w ...

  9. 【MySQL】MySQL 8.0的SYS视图

    MySQL的SYS视图 MySQL8.0的发展越来越趋同与Oracle,为了更好的监控MySQL的一些相关指标,出现了SYS视图,用于监控. 1.MySQL版本 (root@localhost) [s ...

  10. FCN用卷积层代替FC层原因(转)

    原博客连接 : https://www.cnblogs.com/byteHuang/p/6959714.html CNN对于常见的分类任务,基本是一个鲁棒且有效的方法.例如,做物体分类的话,入门级别的 ...