JS(lodash依賴)快速尋找樹形資料末端資料集合
-
-
- 直接上demo代碼
-
直接上demo代碼
需要用到Lodash,應該前端都知道吧
const treeData = [
{
name: '1',
id: '1',
children: [
{
name: '1-1',
id: '1-1'
},
{
name: '1-2',
id: '1-2',
children: [
{
name: '1-2-1',
id: '1-2-1'
},
{
name: '1-2-2',
id: '1-2-2',
children: [
{
name: '1-2-2-1',
id: '1-2-2-1',
}
]
},
]
},
{
name: '1-3',
id: '1-3',
children: [
{
name: '1-3-1',
id: '1-3-1'
},
{
name: '1-3-2',
id: '1-3-2'
},
]
}
]
},
{
name: '2',
id: '2',
children: [
{
name: '2-1',
id: '2-1',
},
{
name: '2-2',
id: '2-2',
}
]
}
]
const getTail = item => item.children && item.children.length > 0 ? item.children.map(m => getTail(m)) : [item]
const result = _.flattenDeep(treeData.map(m => getTail(m)))
console.log(' log result', result)