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

news/2024/12/13 16:17:38/

从官方下载代码
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.ppmy.cn/news/1554798.html

相关文章

muduo网络库:各类功能

一、 二、各类含义 1、EventLoop类 在Muduo网络库中,EventLoop类是核心组件之一。它的作用是**提供事件循环机制, **负责管理和调度各种事件(如I/O事件、定时器事件),确保这些事件能够及时被处理,从而实现…

SSM虾米音乐项目3-后台流派模块的增删改

整体查询到的页面 <div class"widget-header"><i class"icon-list-ol"></i><h3>搜索条件</h3></div><div class"widget-content"><fieldset id"find"><div class"control-gr…

Linux 高级命令大全

Linux 高级命令大全 系统管理 查看所有已加载的服务 systemctl list-units --typeservice 禁用服务的开机自启 systemctl disable service_name 动态启用 IP 转发 sysctl -w net.ipv4.ip_forward1 立即关闭系统 shutdown -h now 重启系统 reboot 查看系统运行时间和负载 …

LightRAG测试BUG

错误一&#xff1a; LightRAG无法回答错误&#xff1a; INFO:lightrag:kw_prompt result:{{"high_level_keywords": ["xxx", "xxx"],"low_level_keywords": ["xxx", "xxx", "xxx"] }} JSON parsing e…

24.DDD与敏捷开发

学习视频来源&#xff1a;DDD独家秘籍视频合集 https://space.bilibili.com/24690212/channel/collectiondetail?sid1940048&ctype0 文章目录 DDD与敏捷开发的关系敏捷宣言DDD与敏捷开发相互助力1. 都强调人与人的协作2. 都强调迭代 DDD与敏捷开发的关系 DDD与敏捷开发不…

访问者模式的理解和实践

在软件开发过程中&#xff0c;设计模式为我们提供了解决常见问题的最佳实践。访问者模式&#xff08;Visitor Pattern&#xff09;是行为设计模式之一&#xff0c;它将数据操作与数据结构分离&#xff0c;使得在不修改数据结构的前提下&#xff0c;能够定义作用于这些元素的新的…

MySQL生产环境备份脚本

全量备份脚本&#xff0c;其中BakDir&#xff0c;ZlbakDir&#xff0c;LogFile需要自己创建 #!/bin/bash export LANGen_US.UTF-8# 指定备份目录 BakDir/root/beifen/data/mysqlbak/data/allbak # 指定增量备份目录 ZlbakDir/root/beifen/data/mysqlbak/data/zlbak # 备份日志…

外卖开发(八)—— SpringTask(定时任务) 和 WebSocket网络协议

外卖开发&#xff08;八&#xff09;—— SpringTask 和 WebSocket 一、利用SpringTask完成定时任务1、cron表达式2、springtask实现 二、使用webSocket实现接单、催单提醒1、代码分析2、催单提醒 一、利用SpringTask完成定时任务 Spring Task是Spring框架提供的任务调度工具&…