json - 如何在reactjs中打印json api数据
问题描述
我正在通过GET
请求获取 json api 详细信息并尝试打印它。收到错误:
控制台中的错误是Uncaught ReferenceError: allUsers is not defined
const Dashboard = ({status, juser}) => {
const [allUsers, setAllUsers] = React.useState([]);
const id = juser.actable_id;
console.log(id); //getting id here as 1
const getAllusers = () => {
axios
.get(`http://localhost:3001/user/${id}`, { withCredentials: true })
.then((response) => {
console.log(response.data);
setAllUsers(response.data);
})
.catch((error) => {
console.log(" error", error);
});
};
React.useEffect(() => {
getAllusers();
}, []);
{allUsers.map((job_seeker, index) => {
return (
<div>
<p>{job_seeker.name}</p>
</div>
);
})}
}
export default Dashboard;
我是新来的反应。任何帮助都是值得赞赏的。
解决方案
您没有将 response 的值传递给 allUsers,而是创建了一个新变量。所以改变
const allUsers = response.data;
至:
allUsers(response.data)
此外,您还可以改进您使用的方式useState
。您已将其初始化为空字符串,而您可能会将响应中的数组存储在jobseekers
. 因此,将其初始化为空数组。
const [jobseekers, allUsers] = React.useState([]);
推荐阅读
- javascript - 获取子元素或组件的焦点信息
- amazon-iam - 提供的角色没有足够的权限访问 CodeDeploy
- sql - SQL 查询以 JSON 格式为 SQLite 返回嵌套的对象数组
- templates - 模板不呈现任何内容,也没有错误,但状态为 200
- java - 春天。Spring 是如何管理 Controller 的
- amazon-web-services - 带有 IRSA 授权错误的 AWS ALB 入口控制器
- java - 如何从java资源文件夹中的文件夹中获取所有文件的列表
- javascript - 从对象数组中过滤
- terraform - 在 Azure Windows VM 上启用 Terraform-PSRemoting
- javascript - 如何使用javascript检查事件侦听器是否已添加到窗口?