75830568
75830568
  • 发布:2022-09-02 15:50
  • 更新:2023-07-12 11:34
  • 阅读:1108

uni-app路由拦截跳转,tabbar不隐藏

分类:uni-app

uni.addInterceptor 实现路由拦截,跳转至登录界面时,tabbar底部导航栏不会隐藏,登陆页面不是tabbar页面。有什么办法可以隐藏呢?
首次打开应用未登录会出现这个问题。

const list = ['navigateTo', 'redirectTo', 'reLaunch', 'switchTab']  
	list.forEach(item => {  
		uni.addInterceptor(item, {  
			invoke(args) {  
				// 白名单直接跳过  
				if (whiteList.find(e => e === args.url)) {  
					return true  
				}  
				// 检查登录信息  
				if (!store.state.user.token) {  
					uni.reLaunch({  
						url: '/pages/login/login'  
					})  
					return false  
				}   
				return true  
			}  
		})  
	})
2022-09-02 15:50 负责人:无 分享
已邀请:

最佳回复

DCloud_UNI_WZF

DCloud_UNI_WZF

HBuilderX 3.6.10 已修复

  • 7***@qq.com

    看更新日志 没有3.6.10版本


    2022-12-23 20:46

小脑斧

小脑斧

这个原因是首次启动app的时候,虽然先跳转到了pages/index/index页面,但是index页面并没有渲染(跳转太快了,可以在index页面上加个onload就知道了,onload并不会执行),然后就跳转到login页面了,此时tabbar就会被误挂载到login页面上了。目前解决方案就是在判断跳转前加一个settimeout,让index先执行到onload,tabbar就会挂载到index页面了,login页面就不会出现tabbar了。
uni.addInterceptor(item, {
invoke(to) {
setTimeout(() => {
////执行判断token是否有效&跳转页面代码
}, 50)
},
fail(err) {
console.log(err)
}
})

DCloud_UNI_WZF

DCloud_UNI_WZF

测试未复现该问题,请检查代码或提供可复现demo

  • 75830568 (作者)

    demo已上传


    2022-09-07 14:15

  • DCloud_UNI_WZF

    回复 75830568: 问题已确认,感谢反馈,已加分


    2022-09-08 16:07

5***@qq.com

5***@qq.com

问题修复了吗

helloheil

helloheil

HBuilder X 3.6.13.20221209 此问题依然存在

  • DCloud_UNI_WZF

    帖子中提供的测试工程测试正常,如确认框架问题,请发帖提供你的测试工程,谢谢


    2022-12-13 16:26

7***@qq.com

7***@qq.com

HBuilder X 3.6.14. 此问题依然存在

zhaoyu2020

zhaoyu2020 - 一只小小鸟

楼主你第一次进app是怎么拦截的

  • 75830568 (作者)

    在app.vue 文件 onLaunch方法拦截即可


    2023-03-10 17:48

  • zhaoyu2020

    回复 75830568: 我感觉官方这个拦截用处不大啊 ,能不能官方出个路由卫士啊,再这样感觉只能放弃uni了 ,估计flutter 会有路由卫士


    2023-03-17 10:21

  • hhyang

    回复 zhaoyu2020: uni-simple-router可以解决啊


    2023-05-23 17:09

  • zhaoyu2020

    回复 hhyang: vue3 uni-simple-router不支持


    2023-06-12 11:14

  • hhyang

    回复 zhaoyu2020: v3版本马上出了 正在写文档


    2023-06-12 12:38

  • zhaoyu2020

    回复 hhyang: 太棒了 加油


    2023-06-12 14:24

1***@163.com

1***@163.com

这个问题解决了吗?我现在刚刚打开app拦截进入登录页面有下面的tabbar,点一下就消失了,正常的退出登录跳转到登录页面就没有

  • DCloud_UNI_WZF

    帖子中提供的测试工程测试正常,如确认框架问题,请提供下测试工程,谢谢


    2023-05-23 20:28

  • 1***@163.com

    回复 DCloud_UNI_WZF: 见我下面的一个帖子,上面有截图


    2023-05-24 15:29

1***@163.com

1***@163.com

杀死APP后台进入APP, 是不应该有tabbar的,看第一个附件, 点击一下tabbar就消失了,是第二个附件,我用的就是楼主的demo

小脑斧

小脑斧

此问题依然存在。。一样的结果。手动隐藏tabbar都没用

小脑斧

小脑斧

3282779003131
3282779003131
3282779003131
3282779003131
3282779003131

hhyang

hhyang - 如有问题,请添加QQ1606726660 备注付费咨询

要回复问题请先登录注册