Weliam-xin
Weliam-xin
> 可能是select2新版本的问题 问题说明:我这边阅读了一下源码,这个问题应该是由于select2插件delay延迟参数不生效导致的,默认系统设置250毫秒的延迟,但是只要搜索内容有任何变化,马上就会请求接口。当使用搜索功能时,中文还没有输入完成,但是select2已经将输入中的英文字符提交过去了。在多次触发接口的时候,select2会判断前面接口是否请求完成,如果没有请求完成会通过abort终止请求。触发终止请求时,Dcat的ajaxSetup全局设置,会触发error事件,调用vendor\dcat\laravel-admin\resources\assets\dcat\js\extensions\Ajax.js文件第62行的handleAjaxError方法,handleAjaxError方法中没有考虑到abort终止请求的情况,所以一直会执行到97行,抛出0 abort错误。   解决方案:vendor\dcat\laravel-admin\resources\assets\dcat\js\extensions\Ajax.js文件handleAjaxError方法里,switch里增加xhr.status等于0时,直接return即可。