- 当前 Bug 的表现(可附上截图)
- 预期表现
自定义 tabBar 本是在不同页面定义不同的导航选项; 但页面地址需要在app.json中的tabBar中申明了才可以显示;
现在的问题是当app.json中tabBar中的选项超过5个就出错;这个请问要怎么解决?是BUG还是我那里设置出错了?
我这里是前台跟后台的tabBar加起来是超过了5个的
- 复现路径
- 提供一个最简复现 Demo
官方 自定义 tabBar 组件;加入超过5个tabBar选项就可复现
框架类型 | 问题类型 | API/组件名称 | 终端类型 | 微信版本 | 基础库版本 |
---|---|---|---|---|---|
小程序 | Bug | 自定义 tabBar | 工具 | 7.04 | 2.65 |
答主解决了吗?这边也遇到相同的问题了
求问楼主解决这块了吗
求问解决了吗
对啊 感觉这样就失去了自定义tabbar的意义了 可以限制最多显示5个 但不要限制app.json配置的数组的数量 又不是用的原生导航
同样遇到这个问题,有没有解决方法?
是的,我也遇到这个问题了,多个角色,每个角色都4个不同的tab,这样自定义了,还是要在app.json里面全部声明才行,超出了会报错,还没解决。。。
tabBar
如果小程序是一个多 tab 应用(客户端窗口的底部或顶部有 tab 栏可以切换页面),可以通过 tabBar 配置项指定 tab 栏的表现,以及 tab 切换时显示的对应页面。
其中 list 接受一个数组,只能配置最少 2 个、最多 5 个 tab。tab 按数组的顺序排序,每个项都是一个对象,其属性值如下:
官方提供 自定义tabBar组件是用来解决不同页面显示不同tabBar的;既然是不同页面有不同的tabBar;那tabBar的数量应该大多数是会超过5个;但超过5个后在app.json里定义就会报错;如果不在app.json中定义就无法显示
tabBar是全局的。整个程序一个tabBar,不存在一个页面一个tabBar的。你的需求,需要自己用view写类似tabBar的控件吧。
我觉得你没明白贴主的意思,使用官方custom-tab-bar自定义tabBar,假设有多用户tabBar(商户,客户)等,合并起来就可能会超过5个pagePath,但所有tabBar(pagePath)要能点击有效,都要写在tabBar.list里,而tabBar.list却限制了5个,此时默认tabBar已开启custom: true。这里产生两个问题,一个是custom: true时,就不应该调用默认tabBar。另一个问题,自定义tabBar的pagePath必须存在默认的tabBar.list里。