当一个页面从B返回到A后,取消B页面的所有请求

当B页面初始化请求接口较多,并且接口响应较慢时,返回A页面后理应取消所有请求,节约流量。
1、项目采用uniapp进行开发,request请求使用luch-request进行封装

2、调用请求时,把getTask存起来

http.get('/user/login', {
    params: {userName: 'name', password: '123456'}, /* 会加在url上 */
    header: {}, /* 会与全局header合并,如有同名属性,局部覆盖全局 */
    // 返回当前请求的task, options。请勿在此处修改options。非必填
    getTask: (task, options) => {
    	this.task = task;
         // 相当于设置超时时间500ms
         // setTimeout(() => {
         //   task.abort()
         // }, 500)
    },
}
}).then(res => {

}).catch(err => {

})

3、待页面销毁时,取消请求

onUnload(){
	this.task.abort();
}

你可能感兴趣的:(Uniapp,前端框架)