gpt4 book ai didi

reactjs - 使用 react 钩子(Hook)时无法读取未定义的属性

转载 作者:行者123 更新时间:2023-12-03 13:35:00 26 4
gpt4 key购买 nike

我收到错误“无法读取未定义的属性“ map ””,但无法弄清楚为什么 - map 无法工作,因为“电影”未定义。你能看出我做错了什么吗?非常感谢。


const Dashboard = () => {
const discoverUrl = 'https://movied.herokuapp.com/discover';
const [movieList, setMovies] = useState({ movies: [] });

useEffect(() => {
const getAllMovies = () => {
fetch(discoverUrl)
.then(response => response.json())
.then(data => setMovies(data))
}
getAllMovies()

}, [])

return (
<ul>
{movieList.movies.map(movie => (
<li>
<p>{movie}</p>
</li>
))}
</ul>
);
}

export default Dashboard```

TypeError: Cannot read property 'map' of undefined

最佳答案

您响应的数据可能是列表或未定义,您需要这样做:

setMovies(pre => ({
...pre,
movies: data || []
}))

关于reactjs - 使用 react 钩子(Hook)时无法读取未定义的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56256099/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com