1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- /** @format */
- import { getToken } from "@/utils/auth";
- // 登录页面
- const loginPage = "/pages/login";
- // 页面白名单
- const whiteList = [
- "/pages/login",
- "/pages/register",
- "/pages/common/webview/index",
- "/pages/personRegistered/bindCompanies",
- "pages/personRegistered/index",
- "pagesB/bindweixin",
- "pages/companiesRegistered/companiesPassword",
- "pages/mine/help",
- ];
- // 检查地址白名单
- function checkWhite(url) {
- const path = url.split("?")[0];
- return whiteList.indexOf(path) !== -1;
- }
- // 页面跳转验证拦截器
- let list = ["redirectTo", "reLaunch", "switchTab"];
- list.forEach((item) => {
- uni.addInterceptor(item, {
- invoke(to) {
- if (getToken()) {
- if (to.url === loginPage) {
- uni.reLaunch({
- url: "/",
- });
- }
- return true;
- } else {
- if (checkWhite(to.url)) {
- return true;
- }
- uni.reLaunch({
- url: loginPage,
- });
- return false;
- }
- },
- fail(err) {
- console.log(err);
- },
- });
- });
|