需要在打字稿中过滤并首先匹配对象数组的元素?
need to filter and first matching element of obect array in typescript?
我反对数组,通过 rest 调用,数据结构如下所示。我需要过滤它并获得第一个匹配的对象。我使用了打字稿过滤器并尝试查找但没有 return 第一个匹配的对象。需要一些专家的帮助来解决这个问题
"products": [
{
"subProduct": {
"Id": "14",
"Type": "Main",
}
},
{
"subProduct": {
"Id": "2",
"Type": "B",
}
},
{
"subProduct": {
"Id": "2",
"Type": "B",
}
},
{
"subProduct": {
"Id": "22",
"Type": "Main",
}
}
]
代码:
const mainProduct = products.find(product => {
product.subProduct.Type === Type.Main;
})
您错过了 find() 中的 return
。
必须是:
const mainProduct = products.find(product => {
return product.subProduct.Type === Type.Main;
})
或没有 return:
products.find(product => product.subProduct.Type === Type.Main)
我反对数组,通过 rest 调用,数据结构如下所示。我需要过滤它并获得第一个匹配的对象。我使用了打字稿过滤器并尝试查找但没有 return 第一个匹配的对象。需要一些专家的帮助来解决这个问题
"products": [
{
"subProduct": {
"Id": "14",
"Type": "Main",
}
},
{
"subProduct": {
"Id": "2",
"Type": "B",
}
},
{
"subProduct": {
"Id": "2",
"Type": "B",
}
},
{
"subProduct": {
"Id": "22",
"Type": "Main",
}
}
]
代码:
const mainProduct = products.find(product => {
product.subProduct.Type === Type.Main;
})
您错过了 find() 中的 return
。
必须是:
const mainProduct = products.find(product => {
return product.subProduct.Type === Type.Main;
})
或没有 return:
products.find(product => product.subProduct.Type === Type.Main)