【发布时间】:2023-01-25 14:11:34
【问题描述】:
我正在尝试过滤 reactJS 中的列表以仅包含其中包含文本“JR:”的元素,但是由于某种原因过滤器返回一个空数组。我是 JS 的新手,来自 Java 背景,所以可能认为问题可能是我在 forEach 中返回,而不是过滤器?不确定,任何帮助将不胜感激。
谢谢
let updated = this.widgetCopy
const filtered = updated.filter((widget)=>{
this.state.selected.forEach((status)=>{
if(status.includes("JR:")){
console.log(widget)
return widget.jr !== null
}else{return true}
})
})
console.log(filtered)
【问题讨论】:
-
请将您的输入/输出数据样本作为 minimal reproducible example 添加到问题中。但主要原因是您无法从
forEach返回,因此您可能还必须在所选状态上使用额外的filter。取决于那是什么。 -
缺少信息,什么是“更新的”,确切地包含字符串数组,字符串数组或对象数组?如果它是字符串数组,则不应使用过滤器。你不需要 foreach
标签: javascript reactjs ecmascript-6