【发布时间】:2020-12-03 15:09:32
【问题描述】:
我正在开发一个带有电影 API (https://developers.themoviedb.org) 的反应应用程序。问题是我正试图将来自 API 的信息放入卡片中。我为此使用 useState 和 useEffect 。另外,我使用 Axios 从 API 中获取它。我不知道,我看不出什么不起作用。错误消息是 map 不是函数,但我相信我的 useEffect 有问题。请帮忙!
const Home = () => {
const [movies, setMovies] = useState([]);
useEffect(() => {
axios.get("https://api.themoviedb.org/3/trending/movie/week?api_key=**APIKEY**")
.then(res => {
setMovies(res.data);
}).catch(console.log)
},
[]
);
return (
<section id="main-page">
<div className='list-main-page'>
<a href='#'>
<h2>
Películas que son tendencia
<FontAwesomeIcon className='arrow-list' icon={faArrowRight} />
</h2>
</a>
<div className='card-list-container'>
{movies.map((movie, i) => {
return (
<Card key={i} image={movie.poster_path} />
)})
}
</div>
</div>
</section>
)
};
export default Home;
【问题讨论】:
-
你泄露了你的 TMDb API 密钥,确保你重置它。
-
您似乎发布了敏感/私人信息。如果是这种情况,请重置您的密码和/或撤销 API 密钥和令牌,因为它们在互联网上发布时被视为已泄露。
标签: javascript reactjs api themoviedb-api