ant-design-pro v4 从服务器请求菜单

ant-design-pro写的比较笼统,router-nav-cn
这里详细介绍一下从服务器请求菜单的过程:
第一步:找到入口文件layouts/BasicLayout.js在这里插入图片描述
第二步:配置请求方法及菜单调用menuData
在这里插入图片描述
第三步:新建一个menu.js,调用 model 的 effect
在这里插入图片描述
第四步:调用统一管理的 service 请求函数
在这里插入图片描述
最后一步:json格式
在这里插入图片描述
注意:如果菜单有子级时,需要多做一步操作:
在这里插入图片描述
在这里插入图片描述
需要将数据进行改造,将父级地址添加到子级去,代码以下:

import { isUrl } from '@/utils/utils';
function formatter(data, parentPath = '/', parentAuthority) {
    return data.map(item => {
        let { path } = item;
        if (!isUrl(path)) {
            path = parentPath + item.path;
        }
        // if (item.icon) {
        //     icon = item.icon.replace('icon-', '');
        // }
        const result = {
            ...item,
            path,
            authority: item.authority || parentAuthority,
        };
        if (item.children) {
            result.children = formatter(item.children,
                `${parentPath}${item.path}/`, item.authority);
        }
        return result;
    });
}

以上,有帮助请点个赞,谢谢。同时也是为了以后可以自己查阅一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值