第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

收到錯(cuò)誤“TypeError:results.map 不是函數(shù)”

收到錯(cuò)誤“TypeError:results.map 不是函數(shù)”

回首憶惘然 2024-01-18 20:38:00
在 React 代碼中,當(dāng)嘗試映射 API 的結(jié)果時(shí),我無法獲取數(shù)據(jù)。這是供參考的代碼。應(yīng)用程序.jsexport const AdminPanel = () => {  const classes = useStyles();  const [results, setResults] = useState([])  const profileData = async () => {    try {        const res = await axios.get("https://randomuser.me/api/?results=10");        setResults(res)    } catch(err) {        console.log(err)    }}useEffect(() => {    profileData()}, [])  return (    <TableContainer component={Paper}>      <Table className={classes.table} aria-label="simple table">        <TableHead>          <TableRow>            <TableCell>First Name</TableCell>            <TableCell align="right">Last Name</TableCell>            <TableCell align="right">Address</TableCell>            <TableCell align="right">Photo</TableCell>            <TableCell align="right">Email</TableCell>            <TableCell align="right">DOB</TableCell>          </TableRow>        </TableHead>        <TableBody>            {results.map((person) => {                console.log('PERSON', person)            })}        </TableBody>      </Table>    </TableContainer>  );}即使將結(jié)果聲明為數(shù)組,仍然會(huì)出現(xiàn)錯(cuò)誤。我是否在某個(gè)地方弄錯(cuò)了。什么是合適的解決方案?
查看完整描述

2 回答

?
子衿沉夜

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊

你快到了。您的 axios 調(diào)用需要稍微改變一下。以下是修復(fù)方法:


import React from "react";

import axios from "axios";

import "./styles.css";


export default function App() {

  const [results, setResults] = React.useState([]);


  const profileData = async () => {

    try {

      const res = await axios

        .get("https://randomuser.me/api/?results=10")

        .then((result) => result.data.results);

      setResults(res)

    } catch (err) {

      console.log(err);

    }

  };


  React.useEffect(() => {

    profileData();

  }, []);


  return (

    <div className="App">

      <h1>Hello CodeSandbox</h1>

      <h2>Start editing to see some magic happen!</h2>


      {results.map((person) => {

        console.log("PERSON", person);

      })}

    </div>

  );

}

注意這部分:


const res = await axios

        .get("https://randomuser.me/api/?results=10")

        .then((result) => result.data.results);

另請(qǐng)記住,console.log("PERSON", person);在返回函數(shù)內(nèi)部實(shí)際上不會(huì)在頁面上呈現(xiàn)任何內(nèi)容,它將打印到控制臺(tái)。只是想澄清這一點(diǎn)。

沙盒:https://codesandbox.io/s/exciting-shockley-9m5vj? file=/src/App.js


查看完整回答
反對(duì) 回復(fù) 2024-01-18
?
慕容708150

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超4個(gè)贊

setResults(res.results) 應(yīng)該完成這項(xiàng)工作



查看完整回答
反對(duì) 回復(fù) 2024-01-18
  • 2 回答
  • 0 關(guān)注
  • 222 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)