【发布时间】:2019-12-30 17:13:30
【问题描述】:
我正在使用反应钩子构建一个项目。我的useEffect 函数如下所示...
useEffect(() => {
(async function() {
const queryParams = await qs.parse(props.location.search, { ignoreQueryPrefix: true }).code;
if (queryParams != undefined) {
setCode(queryParams);
postLogin();
}
})();
});
postLogin 函数只是使用上面定义的查询参数向服务器发出的GET 请求。看起来是这样的……
const postLogin = async () => {
await axios.get("http://XXX.XXX.X.XX:52805/user/auth", {
params: {
auth_code: code
}
}).then(result => {
setAuthTokens(result.data.credentials.access_token);
setLoggedIn(true);
}).catch(e => {
setIsError(true);
});
}
发生的情况是,当我只希望它被调用一次时,该请求将被多次调用。
正如您在上面的屏幕截图中看到的,在 5 个请求中,一个成功,另一个失败,我不确定是什么原因造成的。任何想法都会有所帮助。
【问题讨论】:
标签: javascript reactjs axios react-hooks