【问题标题】:How can I return items that match a condition? [duplicate]如何退回符合条件的商品? [复制]
【发布时间】:2020-11-18 09:59:06
【问题描述】:

我正在使用map,它返回我的 html 元素:

const activeStep = 1;

{filteredData.map((el) => (
  <MarketItem el={el} />
))}

但是我怎样才能做出一些条件,它会返回响应条件的相同元素。

所以,当 activeStep === 1 时,我只需要返回 filteredData 中具有类似 el.isSelected === true 的键和值的元素,否则如果 activeStep !== 1 我需要从 filteredData 返回所有元素el.isSelected !== true

【问题讨论】:

标签: javascript reactjs


【解决方案1】:

您可以通过传递 lambda 函数来使用filter 方法。

const activeStep = 1;

{filteredData.filter((el) => activeStep == 1 ? el.isSelected : true).map((el) => (
   <MarketItem el={el} />
))}

【讨论】:

  • 它总是返回元素el.isSelected === false,甚至activeStep === 1 || activeStep !== 1
  • @VladMovchan,我在我的环境中进行了测试,它可以工作。
  • 是的,很抱歉,在我的情况下 activeStep undefined.. 但是现在,当 activeStep 例如为 2 时,它返回的不是所有元素,而是元素 el.isSelected === false
  • 如果这是预期的结果,您可以接受我的回答以帮助其他人。
  • 这几乎是答案.. 当activeStep !== 1 时,我如何返回所有元素,el.isSelected === false &amp; el.isSelected === true
猜你喜欢
  • 1970-01-01
  • 2014-02-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-28
  • 1970-01-01
  • 2015-12-25
相关资源
最近更新 更多