如何在react axios拦截器中全局显示“加载中”状态
尝试用了antd-mobile中的Toast,但我这个是PC网页端的,效果并没有加载出来。
import Axios from 'axios'
Axios.interceptors.request.use(function (config) {
// 显示“加载中”状态
const token = window.localStorage.token;
if (token) {
config.headers.Authorization = `token ${token}`
}
return config
}, function (error) {
return Promise.reject(error);
});
Axios.interceptors.response.use(function (response) {
// 隐藏“加载中”状态
return response;
}, function (error) {
return Promise.reject(error);
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
拦截器里面的全局加载,需要考虑一个问题,那就是一个页面可能会有很多接口请求,如果像你这么写会造成loading闪烁或者一个接口完成后就loading结束 , 所以你需要设置一个全局变量统计一个接口数量, 当所有的接口返回的时候loading才消失
这个不应该放在axios拦截器里,应该在componentDidMount下用 Promise.all
请问这个问题解决了吗??同求