reactjs 如何在React中从API获取所有电影?

x7rlezfr  于 5个月前  发布在  React
关注(0)|答案(2)|浏览(64)

我想在我的电影应用程序启动时获取API中的所有电影数据
我尝试使用我在搜索框中使用的获取功能,看看数据是否正确获取,我试图在'console.log'上查看它,但它抛出错误。

错误描述:

(intermediate value)is not iterable TypeError:(intermediate value)is not iterable

以下是我尝试的:

const fetchMovies = async () => {
  const [res] = await fetch(`${API_URL}`);
  const dat = await res.json();
  console.log(dat);
};

useEffect(() => {
  fetchMovies();
}, []);

字符串

fslejnso

fslejnso1#

来自await fetch的响应不是一个数组,而是一个对象,所以你得到了错误。去掉方括号- [],你就没事了。

const fetchMovies = async () => {
    const res = await fetch(`${API_URL}`);
    const dat = await res.json();
    console.log(dat);
}

字符串
你可以在这里阅读更多关于fetch的信息:https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch

t5zmwmid

t5zmwmid2#

您可以使用.then简单地解析Promise

const fetchMovies = async () => {
        await fetch(`${API_URL}`)
        .then(res => {
           return res.json();
        })
        .then(resp => console.log(resp, 'movies'))
        .catch(err => console.log(err, 'error'))
}
useEffect(() => {
   fetchMovies() 
}, []);

字符串

相关问题