uni-app登录权限校验(无权限页面重定向至登录页面)

1,134 阅读1分钟

移动端(包括小程序)项目,很多页面有简单的权限校验需求,比如未登录状态下,点击首页,或者个人页面立即重定向至登录页,下面代码展示

1.在axios中检查token是否过期,如果过期立马跳转至login页面

const reLogin = () => {
	const pages = getCurrentPages()
	const curPage = pages[pages.length - 1]
	// 去fullpath 才能包含查询参数
	const url = curPage.$page.fullPath

	const isTabbar = tabbarPaths.includes(curPage.route)
	const type = isTabbar ? 'switchTab' : 'redirectTo'
	// 去登录之前保存当前的url和跳转type到pinia中
	const userStore = useUserStore()
	userStore.setReturnUrl(url)
	userStore.setReturnType(type)

	// 清除用户基本信息 token就在基本信息中
	userStore.removeBasicInfo()

	uni.redirectTo({
		url: '/pages/login/index',
	})
}