最近一周读了ant-design-pro的部分源码,重点关注了整个项目的路由组织部分,很受启发,小小总结一下,欢迎斧正。
1.menu菜单
//菜单项的基本格式
const menuData = [
{
name: 'dashboard',
icon: 'dashboard',
path: 'dashboard',
children: [{
name: '分析页',
path: 'analysis',
}, {
name: '监控页',
path: 'monitor',
}, {
name: '工作台',
path: 'workplace'
}]
},
...
]
这里的菜单path属性配置对用户特别友好,只需要写当前模块的path名称即可,完整path路径会由formatter函数生成:
//递归生成完整path路径
function formatter(data, parentPath = '', parentAuthority) {
return data.map((item, index) => {
const child = item.children;
const path = `${parentPath}/${item.pa