ReactJS 教程问题:类型错误:无法读取未定义的属性'map'



我正在尝试为 NBA 球员统计数据提取一些数据,但我不断收到"无法读取未定义的属性'地图'"错误,我不明白为什么。我以同样的方式完成了类似的教程,没有任何问题,所以我很困惑。 代码如下:

function App() {

const [player, setPlayer] = useState([]);
const [team, setTeam] = useState([]);
const [loading, setLoading] = useState(true);

useEffect(() => {
async function fetchStats() {
let res = await fetch(`https://free-nba.p.rapidapi.com/stats/?format=json`, 
{
"method": "GET", 
"headers": {
"x-rapidapi-host": "free-nba.p.rapidapi.com",
"x-rapidapi-key": "b9c32f403bmshdcd37fd74ccc767p1748b9jsn94ae938ec129"
}
});
let data = await res.json();
setPlayer(data.results);
setLoading(false);
}
fetchStats();
}, []);
return ( //Added where I'm calling Players 
<>
<Router> 
<Navbar />
<Container>
{loading ? (
<Dimmer active inverted>
<Loader inverted>Loading</Loader>
</Dimmer>
) : (
<Switch>
<Route exact path='/player'>
<Players data={player} />
</Route>
<Route exact path='/team'>
<Teams data={team} />
</Route>
</Switch>
)}
</Container>
</Router>

</>
);
}

导出默认函数 播放器({ 数据 }( { 返回 (

<>球员

{data.map((player, i( => {//这是我得到错误返回的地方( {player.first_name}高度

{player.height_feet}

位置{玩家.位置}

) })} )
}

我想出了什么问题。API 从名为 data 的数组返回数据。

所以我不得不放 setPlayer(data.data( 而不是 setPlayer(data.results(。

最新更新