新增全局路由拦截

This commit is contained in:
weipengfei 2023-07-25 15:27:07 +08:00
parent 3a81410fff
commit 208cad1192
2 changed files with 43 additions and 0 deletions

View File

@ -1,12 +1,17 @@
import App from './App'
import store from './store'
import initRouter from '@/router/router.js'
import uView from '@/uni_modules/uview-ui'
import taskCard from "@/components/taskCard/taskCard.vue"
import company from "@/components/company/company.vue"
Vue.use(uView)
Vue.use(taskCard)
Vue.use(company)
initRouter()
// #ifndef VUE3
import Vue from 'vue'
Vue.config.productionTip = false

38
router/router.js Normal file
View File

@ -0,0 +1,38 @@
import { Toast } from "../libs/uniApi";
const functionList = ['navigateTo', 'redirectTo', 'reLaunch', 'switchTab']
const whiteList = ['/','/pages/oaHome/oaHome', '/pages/oaExamine/oaExamine', '/pages/oaTask/oaTask', '/pages/oaMy/oaMy',
'/pages/oaLogin/oaLogin', '/pages/oaManager/oaManager'
]
const hasPermission = (url) => {
if (whiteList.indexOf(url) !== -1 || uni.getStorageSync("TOKEN")) {
return true;
}
return false;
}
const initRouter = () => {
functionList.forEach(item => {
uni.addInterceptor(item, {
invoke(args) {
if (!hasPermission(args.url)) {
Toast('登录后查看更多')
return false;
}
return true;
},
success(args) {
},
fail(err) {
console.log('拦截失败', err)
},
complete(res) {
}
})
})
}
export default initRouter;