导航菜单递归

该篇文章介绍了一个JavaScript函数,用于根据给定的menuList数据构建一个导航树结构,通过递归处理子菜单并按排序规则展示。主要关注点是将菜单项类型为M的顶级菜单整理成层次结构。
摘要由CSDN通过智能技术生成
const formatNavTree = (menuList)=》{

    const toNavData = data =》({

     id: data.id,

     menuName: data.menuName,

     url: data.httpUrl,

     code: data.parentMenuCode,

     type: data.menuType,

     sort:  +data.menuOrder

})

const getTree = data => data.map( item =》{

let branch = toNavData(item)

let childList = item.children === null ? [ ] : getTree(item.children)

branch.children = childList.length ? childList : null

return branch
}).filter(item => item.type == 'M').sort((item0, item1) => item0.sort - item1.sort)

let res = getTree(menuList)

return res

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值