Vue切换页面时碰见过中断axios请求的场景吗?如何中断?

Vue切换页面时碰见过中断axios请求的场景吗?如何中断?

场景:在Vue单页面开发过程中,遇到这样的情况,当我切换页面时,由于上一页面请求执行时间长,切换到该页面时,还未执行完,这时那个请求仍会继续执行直到请求结束,此时将会影响页面性能,并且可能对现在页面的数据显示造成一定影响。

所以我们应该,切换页面前中断前面所有请求

使用cancelToken.sourse工厂方法创建cancel token

const CancelToken = axios.CancelToken;

const source = CancelToken.source();

axios.get('/user/12345', {

cancelToken: source.token

}).catch(function(thrown) {

if (axios.isCancel(thrown)) {

console.log('Request canceled', thrown.message);

} else {

// 处理错误

}

});

axios.post('/user/12345', {

name: 'new name'

}, {

cancelToken: source.token

})

// 取消请求(message 参数是可选的)

source.cancel('Operation canceled by the user.');

猜你喜欢 💖

手机sn码怎么查
beat365亚洲体育官网

手机sn码怎么查

📅 07-18 👁️ 7194
贝纳利是国产还是进口,贝纳利摩托车怎么样
bt365体育投注

贝纳利是国产还是进口,贝纳利摩托车怎么样

📅 08-11 👁️ 2348
网易同城交友怎么样(网易同城交友评价)
beat365亚洲体育官网

网易同城交友怎么样(网易同城交友评价)

📅 08-12 👁️ 5908