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
		}
	})
})
相关推荐
PedroQue9915 小时前
uni-app x 事件通信插件重磅上线
前端·uni-app
gnip19 小时前
uni-app 原生插件
前端·javascript·uni-app
白远山2 天前
自助健身小程序源码:架构拆解、核心链路与本地部署实战
java·架构·uni-app·需求分析
2501_915909062 天前
怎么用 FlutterFlow 把应用发布到 App Store?
android·ios·小程序·https·uni-app·iphone·webview
2501_915918413 天前
怎么把 Python 写的 Flet 应用打包成 iOS App 并上架 App Store?
android·ios·小程序·https·uni-app·iphone·webview
Geek_Vison3 天前
小程序容器如何抹平系统差异,让一个小程序运行在 iOS、安卓、鸿蒙和电脑端
小程序·uni-app·harmonyos·mpaas
PedroQue993 天前
0.5.0重磅发布:动画插件+H5体验全面优化
前端·uni-app
anyup4 天前
仍然是简单一句话,uView Pro Starter 一键清理 Skill 发布
前端·人工智能·uni-app
00后程序员张4 天前
怎么用 Egret(白鹭引擎)打包 iOS 应用并上架 App Store?
android·ios·小程序·https·uni-app·iphone·webview
xujuzheng4 天前
2026深圳小程序/App/AI智能体开发公司选型指南(附本地服务商盘点)
数据库·科技·微信小程序·小程序·uni-app