Vue.js实现tab切换效果


Posted in Javascript onJuly 24, 2019

Vue是一个小巧轻便的JavaScript库。它有一个简单易懂的API,能够让开发者在开发web应用的时候更加简易便捷。实际上,一直让Vue引以为豪的是它的便捷性、执行力、灵活性。

目前在学习Vue.js。在学习的时候需要把手动操作DOM的思维去掉,因为Vue是数据驱动,不需要手动操作DOM。他通过一些特殊的hmtl语法,将DOM和数据绑定起来。一旦创建了绑定,DOM就会和数据保持同步,每当变更了数据,DOM也会相应的发生改变,更新。

下面是我用vue.js来实现的tab切换功能。

<!--这里是html结构-->
<div id="app">
    <ul>
      <li 
      v-for="(item,index) in tabs" 
      :class="{active:index == num}"
       @click="tab(index)">{{item}}</li>
    </ul>
    <div class="tabCon">
      <div 
      v-for='(itemCon,index) in tabContents' 
      v-show=" index == num">{{itemCon}}</div>
    </div>
  </div>
<!--这里是js代码-->
<script type="text/javascript">
var vm = new Vue({
  el: '#app',
  data: {
    tabs: ["标题一", "标题二","标题三"],
    tabContents: ["内容一", "内容二","内容三"],
    num: 1
  },
  methods: {
    tab(index) {
      this.num = index;
    }
  }
});
</script>

使用vue.js实现tab切换很简单,先使用v-for把数据遍历渲染到页面上,v-for中有一个index表示索引,将index作为参数传入到tab(index)这个函数中,在data中定义一个num变量,在title中如果index==num,这个title就会添加一个acive的class。当然,这个num是需要在tab()这个函数中不断改变的,需要将传入的索引值赋值给num,这样在.tabCon里,我们就可以用v-show做下判断。v-show=”index==num”,如果等于的话,当前的内容就会显示。否则隐藏。

我感觉学习vue,首先把以前的那种传统思维转变过来是主要的,其次就是不断实践,不断的敲代码,才可以更深入的学习Vue.js。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js select常用操作控制代码
Mar 16 Javascript
图片翻转效果具体实现代码
Jan 09 Javascript
javascript封装 Cookie 应用接口
Aug 07 Javascript
JavaScript 消息框效果【实现代码】
Apr 27 Javascript
原生js实现弹出层效果
Jan 20 Javascript
在vue中获取dom元素内容的方法
Jul 10 Javascript
使用svg实现动态时钟效果
Jul 17 Javascript
webuploader实现上传图片到服务器功能
Aug 16 Javascript
使用rollup打包JS的方法步骤
Dec 05 Javascript
jQuery选择器之层次选择器用法实例分析
Feb 19 jQuery
vue配置nprogress实现页面顶部进度条
Sep 21 Javascript
vue el-tree 默认展开第一个节点的实现代码
May 15 Javascript
javascript面向对象三大特征之多态实例详解
Jul 24 #Javascript
javascript面向对象三大特征之继承实例详解
Jul 24 #Javascript
Vue.js组件实现选项卡以及切换特效
Jul 24 #Javascript
javascript中call,apply,callee,caller用法实例分析
Jul 24 #Javascript
javascript关于“时间”的一次探索
Jul 24 #Javascript
javascript面向对象三大特征之封装实例详解
Jul 24 #Javascript
解决vue-cli webpack打包开启Gzip 报错问题
Jul 24 #Javascript
You might like
支持oicq头像的留言簿(二)
2006/10/09 PHP
PHP基于cookie与session统计网站访问量并输出显示的方法
2016/01/15 PHP
php提供实现反射的方法和实例代码
2019/09/17 PHP
读jQuery之十三 添加事件和删除事件的核心方法
2011/08/23 Javascript
js同源策略详解
2015/05/21 Javascript
javascript实现相同事件名称,不同命名空间的调用方法
2015/06/26 Javascript
Nodejs初级阶段之express
2015/11/23 NodeJs
webpack入门必知必会
2017/01/16 Javascript
JavaScript中的return布尔值的用法和原理解析
2017/08/14 Javascript
Vue2.0学习系列之项目上线的方法步骤(图文)
2018/09/25 Javascript
vue mounted 调用两次的完美解决办法
2018/10/29 Javascript
JS多个异步请求 按顺序执行next实现解析
2019/09/16 Javascript
浅谈vue的第一个commit分析
2020/06/08 Javascript
vue+element实现图片上传及裁剪功能
2020/06/29 Javascript
微信小程序中target和currentTarget的区别小结
2020/11/06 Javascript
python中requests使用代理proxies方法介绍
2017/10/25 Python
python分治法求二维数组局部峰值方法
2018/04/03 Python
Python使用matplotlib绘制随机漫步图
2018/08/27 Python
Python实现 版本号对比功能的实例代码
2019/04/18 Python
Python 统计位数为偶数的数字代码详解
2020/03/15 Python
CSS3自定义滚动条样式 ::webkit-scrollbar的示例代码详解
2020/06/01 HTML / CSS
英国网上香水店:Fragrance Direct
2016/07/20 全球购物
世界领先的在线地板和建筑材料批发商:BuildDirect
2017/02/26 全球购物
乌克兰第一的珠宝网上商店:Gold.ua
2019/11/29 全球购物
深圳-东方伟业笔试部分
2015/02/11 面试题
教师自荐信
2013/12/10 职场文书
自动化职业生涯规划书范文
2014/01/03 职场文书
《囚绿记》教学反思
2014/03/01 职场文书
阳光体育活动总结
2014/04/30 职场文书
2014年度个人工作总结
2014/11/07 职场文书
2015公务员试用期工作总结
2014/12/12 职场文书
研究生导师推荐信
2015/03/25 职场文书
2015年安全生产工作总结范文
2015/04/02 职场文书
公安纪律作风整顿心得体会
2016/01/23 职场文书
php+laravel 扫码二维码签到功能
2021/05/15 PHP
详解NodeJS模块化
2021/06/15 NodeJs