首页 > 解决方案 > 如何从特定的 history.location.pathname 获取数组对象

问题描述

我的问题是,当我调用函数 getAllFlashCardsFromQuest() 时,它调用所有页面中创建的所有闪存卡,我只想要来自特定路径名的对象,或者过滤卡片数组的方法。

async function getCards() {
    let cardsValues = await getAllFlashCardsFromQuest() as FlashCard[]
    let cardsFiltered = cardsValues.filter(()=>{
        return history.location.pathname === 'CriarAlternativaQuest'
    })
    console.log(cardsFiltered)
    setCards(cardsFiltered)
}

对象如下所示: 在此处输入图像描述

标签: reactjslocationhistorypathname

解决方案


你的代码没有太多的上下文,所以我只能提供这么多帮助,但有一件事是肯定的,那就是history.location.pathname没有改变,你正在将它与另一个常数进行比较。所以cardsFiltered将是一个true列表或一个false列表。

每当您过滤列表时,您需要获取每个项目或每个项目的属性并在比较中使用它。

前任。

async function getCards() {
    let cardsValues = await getAllFlashCardsFromQuest() as FlashCard[]
    let cardsFiltered = cardsValues.filter((cardValueItem) => {
        return cardValueItem.pathname === 'CriarAlternativaQuest'
    })
}

问题是您需要弄清楚您cardsValues需要将列表中的哪些值或属性与“ CriarAlternativaQuest ”进行比较


推荐阅读