防抖函数--应用场景及示例
1.当短时间内出现多次调用同一个东西的时候-可以使用
场景1
接口多次相应401--但是只需要提醒一次
javascript
//time 为全局变量
let time;
axios.interceptors.response.use(
function (response) {
if (response.data.code === 401) {
//当401时清除缓存信息
// Message.error(response.data.msg);
//搞个节流函数--------------此处为防抖函数
let flagT = false;
clearTimeout(time);
time = setTimeout(() => {
flagT = true;
if (flagT) {
Message.error(response.data.msg);
}
}, 500);
// 重定向到登录页
router.replace({
path: "/",
});
return;
}
return response;
},
function (error) {
// 对响应错误做点什么
// loadingInstance.close();
return Promise.reject(error);
}
);
场景2
还有一个场景用的比较多 --随窗口大小变化--更改echrts的大小这个经常会用到--与上边代码同理
诸君有用且点赞