为什么axios在React中一次又一次地命中请求我的以下代码



当我重新加载页面时,这个请求一次又一次地命中

const [adminRequestData, setadminRequestData] = useState([]);

// admin Request
axios
.get("/requestForAdmin")
.then((result) => {
setadminRequestData(result.data);
})
.catch((err) => {
console.log(err);
});

这是因为每当状态发生变化时,函数组件都会执行函数的整个主体。您应该将Axios调用封装在useEffect挂钩中

const [adminRequestData, setadminRequestData] = useState([]);
useEffect(() => {
// admin Request
axios
.get("/requestForAdmin")
.then((result) => {
setadminRequestData(result.data);
})
.catch((err) => {
console.log(err);
});
}, []);

查看更多关于在react here 中管理状态的信息

最新更新