思路,在登录之后将用户类型type写入本地存储,然后在前置路由守卫里面读取然后鉴权。
路由守卫VS拦截器
路由守卫主要管理前端之间页面的跳转
拦截器管理后端交互,
所以说权限管理需要路由守卫来做。
但是没有原生路由守卫,查了半天也没有合适的方法,为了简单快速实现,而且鉴权界面也比较少,所以就在onload生命周期钩子里面判断type类型来替代了,
然后上次一样的报错。。。。。
当前页面正在处于跳转状态,请稍后再进行跳转....
把uni挑战换成wx跳转就解决了,但是这个页面跳转会闪烁,后面再解决把
export const AuthSuperAndStu=()=>
{
let arr=["superadmin","student"]
return arr.includes(uni.getStorageSync("type"))
}
export const AuthSuper=()=>
{
let arr=["superadmin"]
return arr.includes(uni.getStorageSync("type"))
}
export const AuthVisitor=()=>
{
let arr=["visitor"]
return arr.includes(uni.getStorageSync("type"))
}
onLoad(()=>
{
if(!AuthSuperAndStu())
{
uni.showToast({
title:"您没有权限",
icon:"error"
})
wx.switchTab({
url:"/pages/more/more",
fail:function(e)
{
console.log(e)
}
})
}
})