当前位置: 首页 > news >正文

小程序自定义tab-bar,踩坑记录

从官方下载代码
https://developers.weixin.qq.com/miniprogram/dev/framework/ability/custom-tabbar.html

1、把custom-tab-bar 文件放置 pages同级
修改下 custom-tab-bar 下的 JS文件

Component({data: {selected: 0,color: "#7A7E83",selectedColor: "#3cc51f",list: [{pagePath: "/pages/index/index",iconPath: "/static/images/ico/home.png",selectedIconPath: "/static/images/ico/home.png",text: "A"}, {pagePath: "/pages/product/product",iconPath: "/static/images/ico/home.png",selectedIconPath: "/static/images/ico/home.png",text: "B"},{pagePath: "/pages/news/news",iconPath: "/static/images/ico/home.png",selectedIconPath: "/static/images/ico/home.png",text: "C"},{pagePath: "/pages/my/my",iconPath: "/static/images/ico/home.png",selectedIconPath: "/static/images/ico/home.png",text: "D"},
]},attached() {},methods: {switchTab(e) {const data = e.currentTarget.datasetconst url = data.pathwx.switchTab({url})//   this.setData({  这部分注销,到其他页进行赋值//     selected: data.index//   })}}
})

2、跳转到指定页面时,在当页面JS上加上代码:

onShow: function () {  //上面注销得部分, 在A-D页面对应上,  A页面=0 ,B=1 以此类推if (typeof this.getTabBar === 'function' &&  this.getTabBar()) {this.getTabBar().setData({selected: 0     //这里的数字设置当前页面在tabbar里对应的序列,从0开始})}}

3、在app.json 开启自定义tab

  "tabBar": {"custom": true,  //开启"color": "#767676","selectedColor": "#004F8A","backgroundColor": "#fff","borderStyle": "black","list": [

4、在app.js 隐藏原生得JS

// app.js
App({onLaunch() {wx.hideTabBar(); //隐藏原生得tab bar // 展示本地存储能力const logs = wx.getStorageSync('logs') || []logs.unshift(Date.now())wx.setStorageSync('logs', logs)
http://www.lryc.cn/news/504958.html

相关文章:

  • 游戏引擎学习第52天
  • 【热力学与工程流体力学】流体静力学实验,雷诺实验,沿程阻力实验,丘里流量计流量系数测定,局部阻力系数的测定,稳态平板法测定材料的导热系数λ
  • 【HTML】根据不同域名设置不同的网站图标(替换 link 中 href 地址)
  • 使用Navicat从SQL Server导入表数据到MySQL
  • 私有云dbPaaS为何被Gartner技术成熟度曲线标记为“废弃”?
  • 牛客网 SQL1查询所有列
  • 【经验分享】OpenHarmony5.0.0-release编译RK3568不过问题(已解决)
  • 如何使用ERC404协议
  • 240004基于Jamva+ssm+maven+mysql的房屋租赁系统的设计与实现
  • ORACLE RAC ADG备库报错ORA-04021: timeout occurred while waiting to lock object
  • CAPL如何设置或修改CANoe TCP/IP协议栈的底层配置
  • git使用教程(超详细)-透彻理解git
  • 【2024 Dec 超实时】编辑安装llama.cpp并运行llama
  • Docker介绍、安装、namespace、cgroup、镜像-Dya 01
  • docker 搭建自动唤醒UpSnap工具
  • 3D一览通在线协同设计,助力汽车钣金件设计与制造数字化升级
  • 基于Matlab实现三维地球模型(源码)
  • 【Tomcat】第五站:Servlet容器
  • CTF 攻防世界 Web: FlatScience write-up
  • 【SpringBoot中MySQL生成唯一ID的常见方法】
  • 使用Flink CDC实现 Oracle数据库数据同步的oracle配置操作
  • c++作业7
  • vue 上传组件 vxe-upload 实现拖拽调整顺序
  • Windows 环境实战开源项目GFPGAN 教程
  • UE5 做简单的风景观光视频
  • k8s服务搭建与实战案例
  • JavaScript学习难点
  • Qt WORD/PDF(一)使用 QtPdfium库实现 PDF 预览
  • 解决创建laravel项目,使用国外镜像超时,国内镜像缺包的问题
  • Java泛型设计详解