<!-- 交互的逻辑
1==》如何实现 点击当前的那个菜单 给被点击的元素添加样似
@click="getclcik(index)" 记录当前被点击的元素的下标
:class="{active:cur==index} 如果匹配成功,则给这个元素添加一个类active
2==》如何只显示 点击下标与之对应的内容
v-show="cur==index" 对应匹配
原地址==》https://www.jianshu.com/p/52441745d769
<style> ul li { margin: 0; padding: 0; list-style: none; } #app { width: 600px; height: 400px; margin: 0 auto; border: 1px solid #ccc; } .tab-tilte { width: 90%; } .tab-tilte li { float: left; width: 25%; padding: 10px 0; text-align: center; background-color: #f4f4f4; cursor: pointer; } /* 点击对应的标题添加对应的背景颜色 */ .tab-tilte .active { background-color: #09f; color: #fff; } .tab-content div { ; line-height: 100px; text-align: center; } </style>
<div id="app"> <!-- 推荐这种写法--> <ul class="tab-tilte"> <li v-for="(title,index) in tabTitle" @click="getclcik(index)" :class="{active:cur==index}">{{title}}</li> </ul> <div class="tab-content"> <div v-for="(m,index) in tabMain" v-show="cur==index">{{m}}</div> </div> </div>
var app = new Vue({ el: '#app',data: { tabTitle: ['标题一','标题二','标题三','标题四'],tabMain: ['内容一','内容二','内容三','内容四'//默认选中第一个tab },methods:{ getclcik(value){ this.cur=value; } } })
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。