uni.addInterceptor('switchTab', {
// tabbar页面跳转前进行拦截
invoke(e) {
console.log(e)
if (!hasPermission(e.url)) {
console.log('未获取到登录权限,执行switchTab拦截');
uni.redirectTo({
url: '/pages/login/login'
})
return false
}
return true
},
success(e) {
// console.log(e)
}
})

- 发布:2021-11-04 09:48
- 更新:2023-08-20 00:14
- 阅读:602
产品分类: uniapp/App
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: 12.0.1
HBuilderX类型: 正式
HBuilderX版本号: 3.2.12
手机系统: iOS
手机系统版本号: iOS 15
手机厂商: 苹果
手机机型: iphone 13
页面类型: vue
打包方式: 离线
项目创建方式: HBuilderX
示例代码:
操作步骤:
详见bug描述
详见bug描述
预期结果:
登录页不出现tabbar
登录页不出现tabbar
实际结果:
登录页出现了tabbar
登录页出现了tabbar

/**
- 用户免登录方案(亲测可行):
- 1、pages.json中将第一个页面设置为index页面,登录页加到tabbar中(只有配置在菜单中的页面才能去隐藏菜单)
- 2、addInterceptor中无token跳转至登录页,有的话忽略
- 3、登录页中mounted时隐藏tabbar
- 4、首页中mounted中,展示菜单(showTabBar)并隐藏登录菜单uni.setTabBarItem({index: 3,visible: false})
*/
1***@qq.com
可行+1
2023-11-29 10:45