WEB 版本在 App.vue onLanuch 或 onShow 里调用 uni.hideTabbar()
- 发布:2024-07-11 23:54
- 更新:2024-09-15 05:23
- 阅读:408
【报Bug】WEB 版本 App.vue onLaunch 里调用 uni.hideTabbar() 会提示 hideTabBar:fail not TabBar page
产品分类: uniapp/H5
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: 14.1.1 (23B81)
HBuilderX类型: 正式
HBuilderX版本号: 4.23
浏览器平台: Edge
浏览器版本: Version 126.0.2592.81 (Official build) (arm64)
项目创建方式: HBuilderX
操作步骤:
预期结果:
可以隐藏 tabbar
可以隐藏 tabbar
实际结果:
会提示
hideTabBar:fail not TabBar page
会提示
hideTabBar:fail not TabBar page
bug描述:
WEB 版本在 App.vue onLanuch 或 onShow 里调用 uni.hideTabbar()
会提示
hideTabBar:fail not TabBar page
4.02 版本是好的,可以正常隐藏
4.23 版本有问题
在对应 tab 页面的 onShow 里调用是没问题的。
现在的问题就是,雪花 loading 的时候总是有 tabbar,请问如何在一开始就隐藏掉 tabbar?一显一隐的很难看。
zookzook (作者) - hello
只能在 WEB 里特殊处理了,有相同问题的可以参考我的解法。
function hideInWeb() {
if (typeof document == 'undefined') {
return;
}
const ele = document.querySelector<HTMLElement>('.uni-tabbar-bottom');
if (ele) {
ele.style.display = 'none';
}
}
非常抱歉我们的更新对你造成不便,我们版本之前对这个位置进行过调整,原因是其它平台与web平台表现不一致,为了拉齐表现才做出调整的(小程序平台只能在tabbar页面调用相关api),更新过后的tabbar相关api只能在tabbar页面中调用,没有其它bug不会改回去了。您的需求可以尝试换一种方式,在Loading之后通过setTabBarItem,来试一下或者是降低版本使用
-
zookzook (作者)
这种设定本来就很奇怪啊,宽屏的网页显示底部 tabbar 本来就很奇怪,至少要给开发者是否要默认是否要显示 tabbar 的选项,不然 web 总会闪一下底部的 tabbar。你们自己的 demo 网站要怎么处理?以后也不升级了吗
2024-07-12 13:28
-
对于根据角色来判断不能底部导航的App端,简直就是灾难性的。
本来可以在 App.vue onLanuch 或 onShow 里调用 uni.hideTabbar()先隐藏所有,然后再初始化不同角色的Tabbar数量和地址等,之后再uni.showTabbar();现在只能在tabbar页面中调用,你试想一下,还不知道要首页是那个tabbar的地址,怎么调用tabbar的api。2024-07-13 12:01
1***@qq.com
感谢大佬
2024-07-16 02:10