From 208cad11928ae48f9553ec83566b4a3448b1c9de Mon Sep 17 00:00:00 2001 From: weipengfei <2187978347@qq.com> Date: Tue, 25 Jul 2023 15:27:07 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=85=A8=E5=B1=80=E8=B7=AF?= =?UTF-8?q?=E7=94=B1=E6=8B=A6=E6=88=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.js | 5 +++++ router/router.js | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 router/router.js diff --git a/main.js b/main.js index dd738d2..7c642f6 100644 --- a/main.js +++ b/main.js @@ -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 diff --git a/router/router.js b/router/router.js new file mode 100644 index 0000000..7e4782f --- /dev/null +++ b/router/router.js @@ -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; \ No newline at end of file