#reactjs #react-hooks #react-dom
#реагирует на #реагируют-крючки #реагировать-дом
Вопрос:
Я получаю эту ошибку: «Ошибка типа: Не удается прочитать свойства неопределенного (чтение» карты») » в моем коде, и я вообще не уверен, почему, кажется, у меня нет ошибок в самой среде разработки кода, и я проверял это много раз Спасибо за чтение!
const { user } = useAuth0(); const [{songs, setSongs}] = useState([]) useEffect(() =gt; { if (user) { const requestOptions = { method: 'GET' }; let url = 'https://present-deck.com/getsongs/' user.sub fetch(url, requestOptions) .then(response =gt; { return response.json(); }).then(jsonResponse =gt; { setSongs(jsonResponse) }).catch (error =gt; { console.log(error); }) console.log(songs) } }, [user]) return ( lt;gt; lt;ulgt; {songs.map((el) =gt; ( lt;li key={el} className="tailwindCssStuff" onClick={ () =gt; {if (listedSongs.indexOf(el.title) === -1){ addListedSongs(listedSongs.concat(el.title))}}}gt; {el.title}lt;/ligt; ))} lt;/ulgt; lt;/gt; ) }```
Комментарии:
1. Опечатка:
const [{songs, setSongs}] =
должно бытьconst [songs, setSongs] =
.
Ответ №1:
const [{songs, setSongs}] = useState([])
должно быть const [songs, setSongs] = useState([])
Комментарии:
1. Большое вам спасибо, что это сработало!
Ответ №2:
У вас есть ненужный набор скобок при деструктурировании вашего состояния, что приводит к вашему songs
и setSongs
бытию undefined
.
Вместо этого вы хотите:
const [songs, setSongs] = useState([])