uni-app中添加路由拦截

uni-app中添加路由鉴权和路由拦截

在main.js中添加如下代码

javascript 复制代码
let list = ["navigateTo", "redirectTo", "reLaunch", "switchTab"]
let routesWhitelist = ['/pages/tabs/classify','/pages/tabs/study','/pages/tabs/mine'] // 可以直接跳转的路由
let routesMap = [] // 必须登录之后才能跳转的路由
// 路由拦截
list.forEach((item)=> {
	uni.addInterceptor(item,{ // 添加拦截器
		invoke(args) {
			let userToken = store.state.user.token
			console.log('跳转的参数', args)
			if (routesWhitelist.includes(args.url) || !userToken && args.url === '/pages/login/index') {
				return true
			}
			if (!userToken && routesMap.includes(args.url)) {
					// uni.showToast({
					// 	title: '您还未登录哦',
					// 	icon: 'error'
					// })
					uni.reLaunch({
						url: '/pages/login/index'
					})
					return false
			}
			return true
		}
	})
})
相关推荐
毛毛三由3 小时前
【uniapp】微信小程序修改按钮样式
微信小程序·小程序·uni-app
巴博尔3 小时前
uniapp的IOS中首次进入,无网络问题
前端·javascript·ios·uni-app
技术钱3 小时前
uniapp使用音频录音功能
chrome·uni-app·音视频
焚 城3 小时前
UniApp 实现双语功能
javascript·vue.js·uni-app
2501_9160074710 小时前
iOS 26 软件性能测试 新版系统下评估全流程 + 多工具辅助方案
android·macos·ios·小程序·uni-app·cocoa·iphone
xiaohe060111 小时前
🎉 Uni ECharts 2.0 正式发布:原来在 uni-app 中使用 ECharts 可以如此简单!
uni-app·echarts
00后程序员张11 小时前
Swoole HTTPS 实战,在生产环境部署、性能权衡与排查流程
后端·ios·小程序·https·uni-app·iphone·swoole
2501_9159090615 小时前
iOS App 上架全流程详解:证书配置、打包上传、审核技巧与跨平台上架工具 开心上架 实践
android·ios·小程序·https·uni-app·iphone·webview
2501_9151063215 小时前
iOS 26 系统流畅度测试实战分享,多工具组合辅助策略
android·macos·ios·小程序·uni-app·cocoa·iphone
2501_9159184115 小时前
开发 iOS 应用全流程指南,环境搭建、证书配置与跨平台使用 开心上架 上架AppStore
android·ios·小程序·https·uni-app·iphone·webview