遞歸處理數據的幾種方式


原始數據格式

image-20210225134817116

treeJson轉換成一維數組


import { isEmpty, isArray } from 'lodash'

export function formatMenu(data) {
  const result = data.map((item) => {
    if (item.children && item.children.length) {
      formatMenu(item.children)
    } else {
      // console.log(item)
      const { icon, title } = item.meta
      console.log({ icon, title })
      // return { icon, title }
    }
  })
  // return result
}

image-20210225134753060

返回TreeJson相同格式,提取其中的某些數據

// import { cosh } from 'core-js/fn/number'
import { isEmpty, isArray } from 'lodash'

export function formatMenu(data) {
  const result = []
  data.forEach((item) => {
    const { icon, title } = item.meta
    if (item.children && item.children.length) {
      result.push({
        icon,
        title,
        children: formatMenu(item.children),
      })
    } else {
      result.push({ icon, title })
    }
  })
  return result
}

image-20210225134659633


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM