微信小程序tabbar底部导航


Posted in Javascript onNovember 05, 2018

微信小程序重写tabbar底部导航,供大家参考,具体内容如下

1.app.js代码如下:

editTabBar: function() {
    var e = this.globalData.tabbar, a = getCurrentPages(), t = a[a.length - 1], s = t.__route__;
    0 != s.indexOf("/") && (s = "/" + s);
    for (var n in e.list) e.list[n].selected = !1, e.list[n].pagePath == s && (e.list[n].selected = !0);
    t.setData({
      tabbar: e
    });
  },
  tabBar: {
    color: "#123",
    selectedColor: "#1ba9ba",
    borderStyle: "#1ba9ba",
    backgroundColor: "#fff",
    list: [ {
      pagePath: "/we7/pages/index/index",
      iconPath: "/we7/resource/icon/home.png",
      selectedIconPath: "/we7/resource/icon/homeselect.png",
      text: "首页"
    }, {
      pagePath: "/we7/pages/user/index/index",
      iconPath: "/we7/resource/icon/user.png",
      selectedIconPath: "/we7/resource/icon/userselect.png",
      text: "我的"
    } ]
  },
  globalData: {
    userInfo: null,
    tabbar: {
      color: "#333",
      selectedColor: "#d0501f",
      backgroundColor: "#ffffff",
      borderStyle: "#d5d5d5",
      list: [ {
        pagePath: "/pages/seller/gzt",
        text: "工作台",
        iconPath: "/pages/images/gzt@3x.png",
        selectedIconPath: "/pages/images/gztxz@3x.png",
        selected: !0
      }, {
        pagePath: "/pages/seller/cp/cplb",
        text: "商品",
        iconPath: "/pages/images/dbdc.png",
        selectedIconPath: "/pages/images/dbdcxz.png",
        selected: !1
      }, 
      position: "bottom"
    }
  },

template.wxml

<template name="tabbar">
  <view class="tabbar_box" style="background-color:{{tabbar.backgroundColor}}; border-top-color:{{tabbar.borderStyle}}; {{tabbar.position=='top'?'top:0':'bottom:0'}}">
    <navigator class="tabbar_nav" openType="redirect" style="width:{{1/tabbar.list.length*100}}%; color:{{item.selected?tabbar.selectedColor:tabbar.color}}" url="{{item.pagePath}}" wx:for="{{tabbar.list}}" wx:key="index">
      <image class="tabbar_icon" src="{{item.selected?item.selectedIconPath:item.iconPath}}"></image>
      <text>{{item.text}}</text>
    </navigator>
  </view>
</template>

3.template.wxss

.tabbar_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 999;
  width: 100%;
  height: 100rpx;
  border-top: 0.5rpx solid #d5d5d5;
}

.tabbar_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 25rpx;
  height: 100%;
}

.tabbar_icon {
  width: 40rpx;
  height: 40rpx;
}

在需要用的页面(wxml)添加如下代码

<import src="template.wxml"></import>
<template is="tabbar" data="{{tabbar:tabbar}}"></template>

在需要的样式(wxss)添加如下代码

@import "template.wxss";

在需要的js页面添加如下代码:

var dsq, app = getApp();添加在顶部
tabbar: {},在data中添加
app.editTabBar();在onLoad中添加

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

Javascript 相关文章推荐
准确获得页面、窗口高度及宽度的JS
Nov 26 Javascript
JS 中document.URL 和 windows.location.href 的区别
Nov 11 Javascript
JavaScript设置首页和收藏页面的小例子
Nov 11 Javascript
JavaScript跨域方法汇总
Oct 16 Javascript
JS选项卡动态替换banner图片路径的方法
May 11 Javascript
完美解决IE9浏览器出现的对象未定义问题
Sep 29 Javascript
JavaScript中setTimeout的那些事儿
Nov 14 Javascript
微信小程序 swiper制作tab切换实现附源码
Jan 21 Javascript
jQuery插件echarts实现的单折线图效果示例【附demo源码下载】
Mar 04 Javascript
详解vue-cli项目开发/生产环境代理实现跨域请求
Jul 23 Javascript
解决elementUI 切换tab后 el_table 固定列下方多了一条线问题
Jul 19 Javascript
利用javaScript处理常用事件详解
Apr 14 Javascript
详解webpack+ES6+Sass搭建多页面应用
Nov 05 #Javascript
浅谈vux之x-input使用以及源码解读
Nov 04 #Javascript
小程序实现选择题选择效果
Nov 04 #Javascript
小程序实现单选多选功能
Nov 04 #Javascript
Vuex的基本概念、项目搭建以及入坑点
Nov 04 #Javascript
微信小程序实现登录注册tab切换效果
Dec 29 #Javascript
原生js实现淘宝放大镜效果
Oct 28 #Javascript
You might like
PHP关于htmlspecialchars、strip_tags、addslashes的解释
2014/07/04 PHP
php打印一个边长为N的实心和空心菱型的方法
2015/03/02 PHP
php实现的通用图片处理类
2015/03/24 PHP
Zend Framework教程之Zend_Config_Xml用法分析
2016/03/23 PHP
php array_values 返回数组的值实例详解
2016/11/17 PHP
基于jquery实现的服务器验证控件的启用和禁用代码
2010/04/27 Javascript
基于jQuery的图片大小自动适应实现代码
2010/11/17 Javascript
js自动生成的元素与页面原有元素发生堆叠的解决方法
2014/09/04 Javascript
js实现点击切换TAB标签实例
2015/08/21 Javascript
如何根据百度地图计算出两地之间的驾驶距离(两种语言js和C#)
2015/10/29 Javascript
jQuery实现宽屏图片轮播实例教程
2015/11/24 Javascript
Vue.js 2.0中select级联下拉框实例
2017/03/06 Javascript
vue.js开发环境安装教程
2017/03/17 Javascript
微信小程序排坑指南详解
2018/05/23 Javascript
用vuex写了一个购物车H5页面的示例代码
2018/12/04 Javascript
node解析修改nginx配置文件操作实例分析
2019/11/06 Javascript
vue组件实现移动端九宫格转盘抽奖
2020/10/16 Javascript
Python中用于计算对数的log()方法
2015/05/15 Python
python元组的概念知识点
2019/11/19 Python
VSCode基础使用与VSCode调试python程序入门的图文教程
2020/03/30 Python
CSS3 渐变(Gradients)之CSS3 径向渐变
2016/07/08 HTML / CSS
英国最大的奢侈品零售网络商城:Flannels
2016/09/16 全球购物
Kickers鞋英国官网:男士、女士和儿童鞋
2021/03/08 全球购物
经典优秀个人求职自荐信格式
2013/09/25 职场文书
经理职责范文
2013/11/08 职场文书
找工作最新求职信
2013/12/22 职场文书
销售辞职报告范文
2014/01/12 职场文书
个人承诺书
2014/03/26 职场文书
蓝颜请假条
2014/04/11 职场文书
土地租赁意向书
2014/07/30 职场文书
珠宝的促销活动方案
2014/08/31 职场文书
公司委托书格式范本
2014/09/16 职场文书
爱的承诺书
2015/01/20 职场文书
服务员岗位职责范本
2015/04/09 职场文书
春风化雨观后感
2015/06/11 职场文书
openstack云计算keystone组件工作介绍
2022/04/20 Servers