我是 React js 的新手,很快就学会了开发静态网站。因为我是 python 的忠实粉丝,所以我使用 Django-rest-framework 开发了我的后端。
我正在使用反应前端成功地从后端获取我的数据。
我总是喜欢使用功能组件而不是状态组件。我知道我需要映射我的状态对象才能在其中显示内容,但它会引发错误
TypeError: users.map is not a function
我不知道为什么,请指导我完成这个。一件重要的事情是我完美地将我的数据记录到控制台,而不是在 return() 中。
以下是我的代码
import React,{useState,useEffect} from "react"
import{useHttpClient} from './components/http-hook'
const App=()=>{
const[users,setuser]=useState({})
const{isLoading,error,sendRequest,clearError}=useHttpClient()
useEffect(() => {
const fetchUsers=async()=>{
try{
const responseData=await sendRequest("http://127.0.0.1:8000/backend/list/")
setuser(responseData)
}
catch(err){console.log(err)}
}
fetchUsers()
}, [sendRequest])
const fetchUserslist=async=>{
console.log(users)
}
return(<div>
<button onClick={fetchUserslist}>See list</button>
<ul>
{users.map(user=><div>{user.name}</div>)}
</ul>
</div>
)
}
export default App
我创建了自己的自定义钩子 useHttpClient 来处理数据并且没有任何抱怨