扫码关注官方订阅号
同一个速度比较慢的接口,遍历数据库完成后会弹窗出来,可能出现这种情况:还未执行完成,下一次请求就发起了,过了一会,会弹窗两次。怎么在第二次发起请求时,终止前面还在队列中的请求?
小伙看你根骨奇佳,潜力无限,来学PHP伐。
如果另一个请求还未返回,可以用xhr对象的abort()方法;如果请求已经返回,回调函数还在队列中未执行,则在回调中判断是否仍要弹窗
xhr
abort()
1.设置个变量,谁先好设置一个那个变量2.使用ajax的同步模式
abort();
但是不怎么好用。我用的方法是,发送请求的时候定义一个当前的时间戳,一个存在全局,一个存在闭包里。只有当闭包里的和全局里的一样,才执行success的代码
可以回调后判断下有没有正在进行中还没回调的同类请求,有的话不给弹框反馈。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
如果另一个请求还未返回,可以用
xhr对象的abort()方法;如果请求已经返回,回调函数还在队列中未执行,则在回调中判断是否仍要弹窗1.设置个变量,谁先好设置一个那个变量
2.使用ajax的同步模式
但是不怎么好用。我用的方法是,发送请求的时候定义一个当前的时间戳,一个存在全局,一个存在闭包里。只有当闭包里的和全局里的一样,才执行success的代码
可以回调后判断下有没有正在进行中还没回调的同类请求,有的话不给弹框反馈。