Проблемы с поиском и удалением объекта из состояния - PullRequest
0 голосов
/ 29 марта 2020

Итак, у меня есть следующее состояние

{
        "QuoteList": [
          {
            "quote": "I really love my Tesla. I'm in the future. Thank you Elon.",
            "vote": 0,
            "id": "3443b2c9-717a-422b-9666-b6668646efa4"
          },
          "{id: \"4ba25c34-29c8-4924-8943-1f819b424048\", quote:…}",
          "{id: \"d30fa77e-821f-4a0d-b503-ed9ee6b029db\", quote:…}",
          "{id: \"4179b4b4-b534-4a32-88b5-792f6a782c47\", quote:…}",
          "{id: \"ff269cf0-3e72-474f-8516-9ee90a39ccf7\", quote:…}",
          "{id: \"daf4aace-f34b-4874-93bc-6d255191c2c0\", quote:…}",
          "{id: \"58472f93-4ad3-4f99-a2a8-2caaeb91b7a1\", quote:…}",
          "{id: \"09605e80-c257-479c-aacf-a2ed81dc78e5\", quote:…}",
          "{id: \"7207f920-ea0a-46ef-a823-2f0a6fbdbbd8\", quote:…}",
          "{id: \"ba97d5fe-6179-4fda-b4fe-6260051e5dca\", quote:…}"
        ]
      }

, и у меня есть следующий код для уменьшения голосов на -1 для дочернего компонента (идентификатор подается в downVote ()

downVote(id) {
        this.setState((prevState) => ({
            QuoteList: prevState.QuoteList.map((q) => (q.id === id ? { ...q, vote: q.vote - 1 } : q))
        }));
    }

проблема в том, что он не работает и выдает мне следующую ошибку. Может кто-нибудь определить, где я ошибаюсь?: /

TypeError: this.setState is not a function
downVote
src/KanyeQuotes/KanyeQuotes.js:25
  22 | }
  23 | 
  24 | downVote(id) {
> 25 |  this.setState((prevState) => ({
     | ^  26 |      QuoteList: prevState.QuoteList.map((q) => (q.id === id ? { ...q, vote: q.vote + 1 } : q))
  27 |  }));
  28 | }
...