vue组件tabbar使用方法详解


Posted in Javascript onNovember 06, 2018

本文实例为大家分享了vue组件tabbar的具体使用方法,供大家参考,具体内容如下

1.App.vue

<!-- 入口文件 -->
<template>
 <div id="app">
 <!-- 视图层 -->
 <router-view></router-view>
 <!-- 底部选项卡 -->
 <tabbar @on-index-change="onIndexChange" v-if="tabbarShow">
  <tabbar-item selected link="/home">
  <img slot="icon" src="./assets/img/ic_tab_home_normal.png">
  <img slot="icon-active" src="./assets/img/ic_tab_home_active.png">
  <span slot="label">首页</span>
  </tabbar-item>
  <tabbar-item show-dot link="/audioBook">
  <img slot="icon" src="./assets/img/ic_tab_subject_normal.png">
  <img slot="icon-active" src="./assets/img/ic_tab_subject_active.png">
  <span slot="label">书影音</span>
  </tabbar-item>
  <tabbar-item badge="2" link="/mine">
  <img slot="icon" src="./assets/img/ic_tab_profile_normal.png">
  <img slot="icon-active" src="./assets/img/ic_tab_profile_active.png">
  <span slot="label">我的</span>
  </tabbar-item>
 </tabbar>
 </div>
</template>
 
<script>
 // 引入 vux tabbar 组件
 import { Tabbar, TabbarItem } from 'vux'
 // 引入 vuex 的两个方法
 import {mapGetters, mapActions} from 'vuex'
 
 export default {
 name: 'app',
 components:{
  Tabbar,
  TabbarItem
 },
 data() {
  return {
  select:"Home"
  }
 },
 // 计算属性
 computed:mapGetters([
  // 从 getters 中获取值
  'tabbarShow'
 ]),
 // 监听,当路由发生变化的时候执行
 watch:{
  $route(to,from){
  if(to.path == '/' || to.path == '/home' || to.path == '/audioBook' || to.path == '/mine'){
   /**
   * $store来自Store对象
   * dispatch 向 actions 发起请求
   */
   this.$store.dispatch('showTabBar');
  }else{
   this.$store.dispatch('hideTabBar');
  }
  }
 },
 methods: {
  onIndexChange (newIndex, oldIndex) {
  console.log(newIndex, oldIndex);
  }
 }
 }
</script>
 
<style lang="less" scoped>
 
</style>

2.效果图

vue组件tabbar使用方法详解

3.其他情况

<template>
 <div class="weui-tab">
 <div class="weui-tab__panel">
  <p v-for="i in 100">{{i}}</p>
 </div>
 <tabbar>
  <!--use v-link-->
  <tabbar-item v-link="{path:'/component/cell'}">
  <img slot="icon" src="../assets/demo/icon_nav_button.png">
  <span slot="label">Wechat</span>
  </tabbar-item>
  <!--use http link-->
  <tabbar-item show-dot link="https://vux.li">
  <img slot="icon" src="../assets/demo/icon_nav_msg.png">
  <span slot="label">Message</span>
  </tabbar-item>
  <!--use vue-router link-->
  <tabbar-item selected link="/component/cell">
  <img slot="icon" src="../assets/demo/icon_nav_article.png">
  <span slot="label">Explore</span>
  </tabbar-item>
  <!--use vue-router object link-->
  <tabbar-item :link="{path:'/component/cell'}">
  <img slot="icon" src="../assets/demo/icon_nav_cell.png">
  <span slot="label">News</span>
  </tabbar-item>
 </tabbar>
 </div>
</template>
 
<script>
import { Tabbar, TabbarItem } from 'vux'
export default {
 ready () {
 document.querySelector('body').style.height = '100%'
 document.querySelector('html').style.height = '100%'
 document.querySelector('#app').style.height = '100%'
 },
 components: {
 Tabbar,
 TabbarItem
 }
}
</script>

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

Javascript 相关文章推荐
ASP.NET jQuery 实例7 通过jQuery来获取DropDownList的Text/Value属性值
Feb 03 Javascript
基于jQuery实现下拉收缩(展开与折叠)特效
Dec 25 Javascript
JQuery入门——移除绑定事件unbind方法概述及应用
Feb 05 Javascript
js 获取(接收)地址栏参数值的方法
Apr 01 Javascript
javascript省市级联功能实现方法实例详解
Oct 20 Javascript
jQuery实现简单的网页换肤效果示例
Sep 18 Javascript
Bootstrap模态框插件使用详解
May 11 Javascript
Puppeteer 爬取动态生成的网页实战
Nov 14 Javascript
浅谈vue.use()方法从源码到使用
May 12 Javascript
VSCode 添加自定义注释的方法(附带红色警戒经典注释风格)
Aug 27 Javascript
vue3 watch和watchEffect的使用以及有哪些区别
Jan 26 Vue.js
Ajax是什么?Ajax高级用法之Axios技术
Apr 21 Javascript
微信小程序下拉框功能的实例代码
Nov 06 #Javascript
详解ES6中的 Set Map 数据结构学习总结
Nov 06 #Javascript
小程序实现页面顶部选项卡效果
Nov 06 #Javascript
Vue常用的几个指令附完整案例
Nov 06 #Javascript
vue-cli 打包后提交到线上出现 &quot;Uncaught SyntaxError:Unexpected token&quot; 报错
Nov 06 #Javascript
100行代码实现一个vue分页组功能
Nov 06 #Javascript
微信小程序自定义tabBar组件开发详解
Sep 24 #Javascript
You might like
雄兵连:天使彦天使彦为爱折翼,彦和炙心同时念动的誓言!
2020/03/02 国漫
一个连接两个不同MYSQL数据库的PHP程序
2006/10/09 PHP
不用数据库的多用户文件自由上传投票系统(1)
2006/10/09 PHP
隐性调用php程序的方法
2009/03/09 PHP
深入解析PHP的Yii框架中的event事件机制
2016/03/17 PHP
通过PHP实现获取访问用户IP
2020/05/09 PHP
jquery 年会抽奖程序
2011/12/22 Javascript
ejs v9 javascript模板系统
2012/03/21 Javascript
JS简单的轮播的图片滚动实例
2013/06/17 Javascript
值得分享的轻量级Bootstrap Table表格插件
2016/05/30 Javascript
第五篇Bootstrap 排版
2016/06/21 Javascript
JS原型链怎么理解
2016/06/27 Javascript
javascript笔记之匿名函数和闭包
2017/02/06 Javascript
微信小程序实现点击按钮修改文字大小功能【附demo源码下载】
2017/12/06 Javascript
JS计算距当前时间的时间差实例
2017/12/29 Javascript
js中this的指向问题归纳总结
2018/11/28 Javascript
javascript使用Blob对象实现的下载文件操作示例
2020/04/18 Javascript
vue setInterval 定时器失效的解决方式
2020/07/30 Javascript
JavaScript this关键字指向常用情况解析
2020/09/02 Javascript
jenkins自动构建发布vue项目的方法步骤
2021/01/04 Vue.js
[51:34]Ti4主赛事胜者组 DK vs EG 2
2014/07/19 DOTA
python调用百度REST API实现语音识别
2018/08/30 Python
python中正则表达式与模式匹配
2019/05/07 Python
python基于socket实现的UDP及TCP通讯功能示例
2019/11/01 Python
python代码实现TSNE降维数据可视化教程
2020/02/28 Python
Python机器学习工具scikit-learn的使用笔记
2021/01/28 Python
正宗的澳大利亚Ugg靴子零售商:UGG Express
2020/04/19 全球购物
马来西亚奢侈品牌购物商城:Valiram 247
2020/09/29 全球购物
函授本科毕业生自我鉴定
2013/10/16 职场文书
商业活动邀请函
2014/02/04 职场文书
施工工地安全标语
2014/06/07 职场文书
分居协议书范本
2014/11/03 职场文书
2014幼儿园班主任工作总结
2014/12/04 职场文书
毕业纪念册寄语大全
2015/02/26 职场文书
2019通用版导游词范本!
2019/08/07 职场文书
MySQL之DML语言
2021/04/05 MySQL