vue中tab选项卡的实现思路


Posted in Javascript onNovember 25, 2018

今天分享下vue中tab选项卡的套路,废话不多说,直接上效果图

vue中tab选项卡的实现思路

应用场景

•不同注册和登录方式切换
•操作选项切换 如保存和取消
•后台管理系统中各菜单选项切换等
•新闻标题分类切换 如关注 推荐 热点等分类

主要思路

•点击不同 tab 获取 tab 选项卡下标并为其动态绑定一个class(选中状态时的样式)
•点击时使 tab 对应的内容下标与 tab 选项卡下标保持一致
•使用 v-show / v-if 指令控制内容显示与隐藏

代码如下

<html lang="en">
<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>tab</title>
 <script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
 <style>
 html,
 body {
  height: 100%;
  margin: 0;
  padding: 0;
  background-color: #58596b;
 }
 .active {
  color: #fff;
  background: #e74c3c;
 }
 #app {
  width: 800px;
  height: 400px;
  margin: 100px auto;
  background-color: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .1);
 }
 .menuList {
  width: 800px;
  height: 60px;
  background-color: #33344a;
 }
 ul {
  width: 100%;
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
  color: #717181;
  font-size: 16px;
  line-height: 60px;
 }
 ul li {
  flex: 1;
  text-align: center;
  cursor: pointer;
 }
 .tabCon {
  width: 700px;
  margin: 0 auto;
  padding: 40px 20px;
  color: #999;
  font-size: 14px;
  background-color: #fff;
 }
 </style>
</head>
<body>
 <div id="app">
 <div class="menuList">
  <ul>
  <li v-for="(item,index) in list" :key="item.id" :class="{active:num==index}" @click="getNum(index)">
   {{item}}
  </li>
  </ul>
 </div>
 <div class="tabCon">
  <div v-for='(itemCon,index) in tabContents' v-show="index == num">
  {{itemCon}}
  </div>
 </div>
 </div>
 <script>
 var app = new Vue({
  el: "#app",
  data() {
  return {
   num: 0,
   list: ["张三丰", "独孤求败", "周伯通"],
   tabContents: [
   "张三丰,名君宝,字符元,道号三丰。武林至尊,民族英雄 、内拳始祖、太极始祖、武学泰斗、龙行书法始祖张三丰集各派绝学于一身,威震武林,造诣已达炼虚合道至高极境 [1] ,元末明初真人,武当山道人,武当派始祖,正史记载宋理宗淳佑七年(1247年) 出生辽东,14岁考取文武状元,18岁担任博陵县令,(1280年)辞官出家修道,拜火龙真人为师,武林盟主张三丰时隐时现,至今行踪不定,清朝道光年间曾出现在峨眉山。", 
   "独孤求败,自号“剑魔”,纵横江湖三十馀载,杀尽仇寇,败尽英雄,天下更无抗手,无可奈何,惟隐居深谷,以雕为友。呜呼,生平求一敌手而不可得,诚寂寥难堪也。在小说中从未出场过,只曾在人物的口中提及。",
   "周伯通不是金大师小说中的主角,也不是塑造的最丰满、最完善的形象,更不是侠客或英雄的代表,而且就武侠小说最基本的要素-武功、武学所达到的境界来说,周伯通也不是绝顶高手,但毫无疑问,周伯通是金大师所塑造的所有人物中最有意思的一位,至少是最有意思的人物之一。"],
  }
  },
  methods: {
  getNum(index) {
   this.num = index;
  }
  }
 })
 </script>
</body>
</html>

总结

以上所述是小编给大家介绍的vue中tab选项卡的实现思路,希望对大家有所帮助,如果大家有任何疑问小编会及时回复大家的!

Javascript 相关文章推荐
在IE上直接编辑网页内容的js代码(IE地址栏js)
Apr 27 Javascript
Extjs根据条件设置表格某行背景色示例
Jul 23 Javascript
jQuery Timelinr实现垂直水平时间轴插件(附源码下载)
Feb 16 Javascript
JQuery 在文档中查找指定name的元素并移除的实现方法
May 19 Javascript
jQuery和JavaScript节点插入元素的方法对比
Nov 18 Javascript
js实现5秒倒计时重新发送短信功能
Feb 05 Javascript
Angular2关于@angular/cli默认端口号配置的问题
Jul 15 Javascript
arcgis for js栅格图层叠加(Raster Layer)问题
Nov 22 Javascript
对vux点击事件的优化详解
Aug 28 Javascript
微信小程序外卖选购页实现切换分类与数量加减功能案例
Jan 15 Javascript
vue项目中将element-ui table表格写成组件的实现代码
Jun 12 Javascript
分享JS表单验证源码(带错误提示及密码等级)
Jan 05 Javascript
Cookbook组件形式:优化 Vue 组件的运行时性能
Nov 25 #Javascript
vscode 开发Vue项目的方法步骤
Nov 25 #Javascript
浅谈Vue.js 中的 v-on 事件指令的使用
Nov 25 #Javascript
electron + vue项目实现打印小票功能及实现代码
Nov 25 #Javascript
vue组件实践之可搜索下拉框功能
Nov 25 #Javascript
详解离线安装npm包的几种方法
Nov 25 #Javascript
vue将单页面改造成多页面应用的方法
Nov 25 #Javascript
You might like
微信支付开发动态链接Native支付
2016/07/12 PHP
PHP 自动加载类原理与用法实例分析
2020/04/14 PHP
jquery ajax提交表单数据的两种方式
2009/11/24 Javascript
JavaScript 闭包在封装函数时的简单分析
2009/11/28 Javascript
qTip2 精致的基于jQuery提示信息插件
2012/02/17 Javascript
基于jquery完美拖拽,可返回拖动轨迹
2012/03/29 Javascript
深入理解JavaScript系列(14) 作用域链介绍(Scope Chain)
2012/04/12 Javascript
仿百度输入框智能提示的js代码
2013/08/22 Javascript
javascript实现的元素拖动函数宿主为浏览器
2014/07/21 Javascript
JavaScript事件委托实例分析
2015/05/26 Javascript
谈一谈javascript闭包
2016/01/28 Javascript
JS实现为排序好的字符串找出重复行的方法
2016/03/02 Javascript
用Vue写一个分页器的示例代码
2018/04/22 Javascript
解决betterScroll在vue中存在图片时,出现拉不动的问题
2018/09/27 Javascript
[57:28]2018DOTA2亚洲邀请赛 4.6 淘汰赛 TNC vs Liquid 第一场
2018/04/10 DOTA
[44:40]Serenity vs Pain 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
[09:59]DOTA2-DPC中国联赛2月7日Recap集锦
2021/03/11 DOTA
python 中文乱码问题深入分析
2011/03/13 Python
初步认识Python中的列表与位运算符
2015/10/12 Python
使用Python写一个贪吃蛇游戏实例代码
2017/08/21 Python
解决出现Incorrect integer value: '' for column 'id' at row 1的问题
2017/10/29 Python
解决Python requests库编码 socks5代理的问题
2018/05/07 Python
Python控制Firefox方法总结
2019/06/03 Python
python读取word 中指定位置的表格及表格数据
2019/10/23 Python
Python坐标轴操作及设置代码实例
2020/06/04 Python
树莓派升级python的具体步骤
2020/07/05 Python
Python自动化之UnitTest框架实战记录
2020/09/08 Python
Myprotein俄罗斯官网:欧洲第一运动营养品牌
2019/05/05 全球购物
Edwaybuy西班牙:小米在线商店
2019/12/04 全球购物
历史学专业个人的自我评价
2013/10/13 职场文书
大学生期末自我鉴定
2014/02/01 职场文书
活动策划求职信模板
2014/04/21 职场文书
升职自荐信怎么写
2015/03/05 职场文书
企业文化学习心得体会
2016/01/21 职场文书
go语言-在mac下brew升级golang
2021/04/25 Golang
python用tkinter开发的扫雷游戏
2021/06/01 Python