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
		}
	})
})
相关推荐
粉末的沉淀8 小时前
uniapp:带参数回到上一页
uni-app
华玥作者12 小时前
从“碎片化”到“资产化”:Vue3 + UniApp 组件库的进化论
ui·uni-app·vue·组件库
Crystal32812 小时前
App wgt 热更新 — 开发笔记(uniapp)
前端·uni-app·app
大阳光男孩13 小时前
【UniApp小程序开发】解决无法使用Vue自定义指令的完美替代方案:权限组件封装
前端·vue.js·uni-app
2501_9159184113 小时前
Linux 上生成 AppStoreInfo.plist,App Store 上架 iOS
android·ios·小程序·https·uni-app·iphone·webview
只要微微辣13 小时前
Uniapp 微信小程序 Canvas画框标注:拖拽缩放全攻略
前端·微信小程序·uni-app·canvas·canva可画
我命由我1234514 小时前
Dart - 数字类型、布尔类型、列表类型
android·开发语言·flutter·ios·uni-app·android jetpack·移动端
一朵盆栽15 小时前
uni-app用Windows系统开发iOS端
ios·uni-app·cocoa
anyup1 天前
uni-app X 全屏引导页组件,一套支持 App、H5、小程序多端引导
前端·架构·uni-app
织_网3 天前
UniApp 快速集成个推推送(UniPush2.0)完整实战教程
uni-app