支付宝小程序tabbar底部导航


Posted in Javascript onNovember 06, 2018

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

1.app.js中代码如下

editTabBar: function () {
  var e = this.globalData.tabbar, a = getCurrentPages(), t = a[a.length - 1], s = t.route;
  console.log(t)
  console.log(s)
  0 != s.indexOf("/") && (s = "/" + s);
  for (var n in e.items) e.items[n].selected = !1, e.items[n].pagePath == s && (e.items[n].selected = !0);
  t.setData({
   tabbar: e
  });
 },
 globalData: {
  userInfo: null,
  //配置tabbar
  tabbar: {
   textColor: "#333",
   selectedColor: "#d0501f",
   backgroundColor: "#ffffff",
   borderStyle: "#d5d5d5",
   items: [{
    pagePath: "/pages/seller/gzt/gzt",
    name: "工作台",
    icon: "/pages/icon/index.png",
    activeIcon: "/pages/icon/index_1.png",
    selected: !0
    },{
    pagePath: "/pages/seller/shezhi/shezhi",
    name: "设置",
    icon: "/pages/images/sz@3x.png",
    activeIcon: "/pages/images/xzsz.png",
    selected: !1
   }],
   position: "bottom"
  }
 }

2.template.axml代码如下

<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.items.length*100}}%; color:{{item.selected?tabbar.selectedColor:tabbar.textColor}}" url="{{item.pagePath}}" a:for="{{tabbar.items}}" a:key="index">
      <image class="tabbar_icon" src="{{item.selected?item.activeIcon:item.icon}}"></image>
      <text>{{item.name}}</text>
    </navigator>
  </view>
</template>

3.template.acssl代码如下

.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;
}

4.在需要引入的页面(.axml)中

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

5.在需要引入的样式(acss)中

@import "../template.acss";

6.在需要引入的js中

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

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

Javascript 相关文章推荐
JavaScript CSS修改学习第二章 样式
Feb 19 Javascript
纯CSS打造的导航菜单(附jquery版)
Aug 07 Javascript
Javascript异步编程的4种方法让你写出更出色的程序
Jan 17 Javascript
js使用html()或text()方法获取设置p标签的显示的值
Aug 01 Javascript
深入理解JavaScript系列(18):面向对象编程之ECMAScript实现
Mar 05 Javascript
JavaScript判断数组重复内容的两种方法(推荐)
Jun 06 Javascript
Javascript中字符串replace方法的第二个参数探究
Dec 05 Javascript
vue.js中Vue-router 2.0基础实践教程
May 08 Javascript
React Native预设占位placeholder的使用
Sep 28 Javascript
React Native 图片查看组件的方法
Mar 01 Javascript
详解Vue开发微信H5微信分享签名失败问题解决方案
Aug 09 Javascript
基于mpvue小程序使用echarts画折线图的方法示例
Apr 24 Javascript
利用JavaScript缓存远程窃取Wi-Fi密码的思路详解
Nov 05 #Javascript
利用hasOwnProperty给数组去重的面试题分享
Nov 05 #Javascript
微信小程序实现底部导航
Nov 05 #Javascript
对 Vue-Router 进行单元测试的方法
Nov 05 #Javascript
在element-ui的el-tree组件中用render函数生成el-button的实例代码
Nov 05 #Javascript
微信小程序http连接访问解决方案的示例
Nov 05 #Javascript
vue多级复杂列表展开/折叠及全选/分组全选实现
Nov 05 #Javascript
You might like
使用Limit参数优化MySQL查询的方法
2008/11/12 PHP
php匹配字符中链接地址的方法
2014/12/22 PHP
最准确的php截取字符串长度函数
2015/10/29 PHP
Jquery实现的tab效果可以指定默认显示第几页
2013/10/16 Javascript
jquery ajaxSubmit 异步提交的简单实现
2014/02/28 Javascript
jQuery实现自动调整字体大小的方法
2015/06/15 Javascript
JavaScript实现页面定时刷新(定时器,meta)
2016/10/12 Javascript
jquery 多个radio的click事件实例
2016/12/03 Javascript
浅析Jquery操作select
2016/12/13 Javascript
javaScript嗅探执行神器-sniffer.js
2017/02/14 Javascript
AngularJS的ng-click传参的方法
2017/06/19 Javascript
jQuery 循环遍历改变a标签的href(实例讲解)
2017/07/12 jQuery
深入理解基于vue-cli的vuex配置
2017/07/24 Javascript
vue中使用echarts制作圆环图的实例代码
2018/07/27 Javascript
详解Node.js 中使用 ECDSA 签名遇到的坑
2018/11/26 Javascript
微信小程序 JS动态修改样式的实现方法
2018/12/16 Javascript
js常用方法、检查是否有特殊字符串、倒序截取字符串操作完整示例
2020/01/26 Javascript
如何管理Vue中的缓存页面
2021/02/06 Vue.js
[02:40]2014DOTA2 国际邀请赛中国区预选赛 四大豪门抵达华西村
2014/05/23 DOTA
[02:28]DOTA2 2017国际邀请赛小组赛回顾
2017/08/09 DOTA
Python绘制七段数码管实例代码
2017/12/20 Python
Python中.join()和os.path.join()两个函数的用法详解
2018/06/11 Python
pandas使用apply多列生成一列数据的实例
2018/11/28 Python
python 实现倒排索引的方法
2018/12/25 Python
15行Python代码实现网易云热门歌单实例教程
2019/03/10 Python
Python实现微信中找回好友、群聊用户撤回的消息功能示例
2019/08/23 Python
推荐值得学习的12款python-web开发框架
2020/08/10 Python
HTML5 Canvas基本线条绘制的实例教程
2016/03/17 HTML / CSS
请介绍一下Ant
2016/07/22 面试题
就业协议书范本
2014/04/11 职场文书
2014最新版群众路线四风整改措施
2014/09/24 职场文书
工厂仓管员岗位职责
2015/04/01 职场文书
证婚人致辞精选
2015/07/28 职场文书
浅谈redis缓存在项目中的使用
2021/05/20 Redis
古见同学有交流障碍症 第二季宣传CM公开播出
2022/04/11 日漫
浅谈Redis变慢的原因及排查方法
2022/06/21 Redis