可能是一个愚蠢的问题,但我在这里苦苦挣扎。我遍历一个api,我只想在数组中插入满足条件的元素。使用下面的代码,im只会使第一个结果重复两次。
(state.data || []).map((details) => (
(details.events || []).map((values) => (
(values.dataValues || []).map((results) => (
((results.code ==='y1z7anzbp5r')) ? (
array.push([{data: values.eventDate, value: results.value}])
):(null)
))
))
))
迭代有什么问题吗?
答案 0 :(得分:0)
您想要的是最后使用过滤器。这样可以减少代码的复杂性,并使最终数组仅包含具有所需代码的项目数组。
(state.data ?? []).map((details) => (details.events ?? []).map((values) => (values.dataValues ?? []).filter((results) => results.code === 'y1z7anzbp5r')))