我有以下收藏:
var realty = {
name: 'Realty A',
entrances: [
{
name: 'Entrance A',
units: [
{name: 'unitA', contracts: [{contractNo: 'no.963'}, {contractNo: 'no.741'}]},
{name: 'unitB', contracts: [{contractNo: 'no.789'}, {contractNo: 'no.564'}]}
]
},
{
name: 'Entrance B',
units: [
{name: 'unitC', contracts: [{contractNo: 'no.419'}, {contractNo: 'no.748'}]},
{name: 'unitD', contracts: [{contractNo: 'no.951'}, {contractNo: 'no.357'}]}
]
}
]
}
我正在尝试提取契约(Contract)集合。
我尝试使用 lodash 'map' 函数如下:
_.map(realty, 'entrances.units.contracts')
但是 'property' iterate 不适用于数组。
知道如何提取所有契约(Contract)的集合吗?也许 lodash 链可以提供帮助,但我不确定如何使用它:/。
最佳答案
这似乎可以解决问题
_(realty.entrances).flatMap('units').flatMap('contracts').value()
关于javascript - 嵌套集合的 Lodash 映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49553159/