同一个速度比较慢的接口,遍历数据库完成后会弹窗出来,可能出现这种情况:
还未执行完成,下一次请求就发起了,过了一会,会弹窗两次。
怎么在第二次发起请求时,终止前面还在队列中的请求?
同一个速度比较慢的接口,遍历数据库完成后会弹窗出来,可能出现这种情况:
还未执行完成,下一次请求就发起了,过了一会,会弹窗两次。
怎么在第二次发起请求时,终止前面还在队列中的请求?
abort();
但是不怎么好用。我用的方法是,发送请求的时候定义一个当前的时间戳,一个存在全局,一个存在闭包里。只有当闭包里的和全局里的一样,才执行success的代码
13 回答13.1k 阅读
7 回答2.3k 阅读
3 回答1.4k 阅读✓ 已解决
6 回答1.5k 阅读✓ 已解决
2 回答1.5k 阅读✓ 已解决
3 回答1.5k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
如果另一个请求还未返回,可以用
xhr
对象的abort()
方法;如果请求已经返回,回调函数还在队列中未执行,则在回调中判断是否仍要弹窗