1、首先定义一个全局变量req,这样方便在全局中断该请求
2、给这个变量赋值
this.req = uni.request({
url: 'xxx',
method: 'post',
data: {},
success: {},
...
})
request 请求一般是放在某一个函数内部的,
当有需求在进行某一个请求时中止当前请求时,在调用下一个请求之前,使用this.req.abort()即可中止
可能这个方法并不是很好,但我尝试了封装promise 或者使用await ,均没有得到满意的效果
我遇到的问题如图:
一个这样的导航头,不同的类别从后台获取不同的数据,所以每次切换类别都会重新请求数据,bug在于当用户快速切换类别时,当前的请求还未结束,下一次请求又开始了,导致出现的问题就是不同类别的商品出现在了一个类别下面,原本尝试了使用同步的方式,但并没有效果,最后使用了abort() 方式才解决了这个问题,希望以后能找到更好的方式