`

js 树形结构整合

    博客分类:
  • js
阅读更多

 

一。根据标识符去掉空菜单。

// 根据菜单有‘/’页面没有‘/’的特点
function deleteEmptyMenu(data) {
  const newData = []
  for (let i = 0; i < data.length; i++) {
    if (data[i].path.indexOf('/') === -1 || data[i].children.length > 0) {
      if (data[i].children && data[i].children.length > 0) {
        const json = {
          path: data[i].path,
          children: []
        }
        newData.push(json)
        const rtData = deleteEmptyMenu(data[i].children)
        const length = newData.length - 1
        newData[length].children.push(rtData)
      } else {
        newData.push(data[i])
      }
    }
  }
  return newData
}

 

 

 

 

二。技术:主要就是使用了递归调用的方法来实现的

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics