我需要按“段”属性进行过滤,在这种情况下,我需要按段进行过滤:[名称:“一般”]
我有以下数组
const lines = [{
id: 1191,
name: "dev",
segments: []
},
{
id: 1192,
name: "credit",
folder: "Embarazadas",
segments: [{
"name": "general",
},
{
"name": "custom",
}
]
},
{
id: 1311,
name: "box",
segments: [{
"name": "custom",
"line_id": 1431,
"id": 21,
"active": true
}]
},
{
id: 2000,
name: "sin folder",
folder: null,
segments: [{
"name": "custom",
},
{
"name": "general",
}
],
},
{
id: 2000,
name: "credit card",
segments: [{
"name": "general",
}],
},
]
我需要获取所有具有“常规”段的对象
我尝试过Ramda这样做,但是我没有得到结果,首先我绘制了线条图,然后进行了过滤。问题在于,细分市场属性有时到达空]
const filterLinesBySegments = (lines) => {
const filter = (line) => {
const hasSegments =R.filter(seg => seg["name"] === "general")(line.segments)
const newLine = R.compose(
R.assoc("segments", hasSegments),
)(line)
return newLine
}
const new= R.map(item => {
return R.filter(line => {
return filter(line)
})(item)
})(lines)
return new;
}
我需要按“段”属性进行过滤,在这种情况下,我需要按段进行过滤:[名称:“常规”我有以下数组const lines = [{id:1191,名称:“ dev”,段:[ ]},...
您可以使用R.filter和R.where来按特定属性进行过滤。由于segments
是一个数组,请使用R.any搜索某些对象的name
是否为general
。