umi max4.4.3菜單權(quán)限控制

1、判斷登錄:

在src目錄下新建文件wrappers/auth.ts 在src/access.ts中控制菜單權(quán)限

auth.ts文件代碼

// src/wrappers/auth.ts
import { getToken } from '@/utils/auth';
import { matchRoutes, Navigate, Outlet, useAppData, useLocation } from 'umi';

export default function Auth(props: any) {
  //判斷是否有token
  const isLogin = getToken();
  //如果token存在就返回正常內(nèi)容
  if (isLogin) {
    return <Outlet />;
  } else {
    //如果不存在token就重定向到登錄頁
    console.log('跳登錄');
    return <Navigate to="/login" />;
  }
}

access.ts文件代碼

// src/access.ts
export default function (initialState) {
  return {
    RolePage: authorizedMenus.includes('/role') //此處根據(jù)后端返回的權(quán)限列表authorizedMenus判斷是否含有RolePage  
  };
}
.umirc.ts文件內(nèi)配置路由 使用access 和wrappers
{
      name: '角色管理',
      access: 'RolePage',
      path: '/role',
      component: './role',
      icon: 'CrownOutlined',
      wrappers: ['@/wrappers/auth'],
    },
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容