使用 findIndex() 从数组中删除特定元素 - React [重复]

Posted

技术标签:

【中文标题】使用 findIndex() 从数组中删除特定元素 - React [重复]【英文标题】:Removing specific Element from an Array using findIndex() - React [duplicate] 【发布时间】:2021-09-05 01:48:51 【问题描述】:

我有这个函数需要删除从数组中单击的项目。我确定它是一个简单的修复,但它不会从数组中删除它。我认为这与我如何在按钮中执行功能有关?我不完全确定。 错误:TypeError:e.findIndex 不是函数

const deleteClaim = (claim,value) => 
  const index = claim.findIndex(element => element === value); // 1
  const result = claim.splice(index, 1);
  return result

按钮是

      <button onClick=(e) => deleteClaim(claim, e.target.value) >X </button>

【问题讨论】:

按钮在你的代码中是否有值属性? TypeError: e.findIndex 不是函数 'Result' 可能是正确的答案。但是,您是否将其分配回列表中? 你是什么意思结果是最好的答案? 如果这是react,则需要用更新后的数组设置状态。 【参考方案1】:

这是我工作项目的一小段代码

selectedForDeleteArr是数组

function removeStatusEnum(id) 
if (selectedForDeleteArr.includes(id)) 
    let index = selectedForDeleteArr.indexOf(id)
    if (index > -1) 
        selectedForDeleteArr.splice(index, 1);
    
    $("#sts_id" + id).removeClass("selected-to-delete")
 else 
    selectedForDeleteArr.push(id)
    $("#sts_id" + id).addClass("selected-to-delete")

console.log(selectedForDeleteArr)

【讨论】:

以上是关于使用 findIndex() 从数组中删除特定元素 - React [重复]的主要内容,如果未能解决你的问题,请参考以下文章

JS查找数组指定元素

如何使用python从数组中删除特定元素

如何使用jQuery从数组中删除特定值

PHP:如何从数组中删除特定元素?

如何从 numpy nd 数组中删除特定元素?

如何从javascript或jquery中的元素数组中删除特定元素