instance.interceptors.request.use(
config => {
const controller = new AbortController()
config.signal = controller.signal
if (!window._axiosPending) {
window['_axiosPending'] = []
}
window['_axiosPending'].push({
url: config.url,
controller: controller
})
return config
})
router.beforeEach((to, from, next) => {
if (window && window._axiosPending) {
window._axiosPending.forEach((im, index) => {
im && im.controller.abort()
delete window._axiosPending[index]
})
window._axiosPending = []
}
})