头图

Antd Pro V5 登录后重新远程请求菜单

GhostCoder
English

因为路由是存在 initialState 这个 Hooks 中,如下:

const { initialState, setInitialState } = useModel('@@initialState');

所以只需要在登录的逻辑中利用这段代码即可:

// 自己写的远程请求接口
import { R_Menu } from '@/services/builder';
// 导入系统默认的菜单
import SystemRoutes from '@/../config/routes';
  const fetchUserInfo = async () => {
    const userInfo = await initialState?.fetchUserInfo?.();
    if (userInfo) {
      const menu = await R_Menu();
      // 合并系统路由 & 业务菜单
      const freshMenu = SystemRoutes.concat(menu);
      setInitialState({
        ...initialState,
        menuData: freshMenu,
        currentUser: userInfo,
      });
    }
  };
阅读 112
Stay hungry,Stay foolish
249 声望
3 粉丝
0 条评论
你知道吗?

Stay hungry,Stay foolish
249 声望
3 粉丝
宣传栏