一.? CancelToken(axios中取消請(qǐng)求)
1. tab切換時(shí),在切換頻率低時(shí),當(dāng)切換到另一個(gè)頁面的時(shí)候,往往本頁面的異步請(qǐng)求還沒有完成,但是一般情況下不會(huì)產(chǎn)生太大影響;但是當(dāng)切換頻率高時(shí),如果我們不處理這些未完成的請(qǐng)求,那么這些請(qǐng)求會(huì)極大的影響到頁面的性能,甚至導(dǎo)致之后的請(qǐng)求超時(shí)。
在vue中,中斷axios的某個(gè)http請(qǐng)求時(shí),可以用到CancelToken。
```javascript
var CancelToken = axios.CancelToken;
var source = CancelToken.source();
axios.get('/user/12345', {
? cancelToken: source.token
}).catch(function(thrown) {
? if (axios.isCancel(thrown)) {
? ? console.log('Request canceled', thrown.message);
? } else {
? ? // handle error
? }
});
// cancel the request (the message parameter is optional)
source.cancel('Operation canceled by the user.');
```