在使用mui.ajax时,我将async设置为false,程序确实等待请求结束了。但是执行下面的代码时,按理应该是先执行ajax里面的success(),再之后ajax外边的方法。但是现在的执行顺序是先执行外边的,再执行success,导致我这边无法使用ajax返回的数据。由于调用函数的逻辑比较复杂,而且包含返回值,所以很难用callback传入success中去实现。如附件中所示,其中20秒的时间差,是我后台卡断点之后等待的时间。
请问这个是mui的bug吗,还是我的使用方式不对呢?
- 发布:2016-08-30 17:10
- 更新:2020-03-04 13:47
- 阅读:10068
我这里测试没问题:
console.log('start');
mui.ajax({
url: 'http://runjs.cn/action/echo/json',
async: false,
data: {
'name': 'mui'
},
success: function(response) {
console.log(response);
}
});
console.log('end');
输出:
start
{"name":"mui"}
end
-
lvzhm (作者)
你好,我在HelloMui里面测试您的代码是可以的,但是为啥把这段代码放到我们的程序里面就不行呢?考虑可能是因为mui.js和mui.min.js版本的问题,我还把HelloMui里面的mui.js和mui.min.js拷贝了过来。但是还是先输出的:start、end、{"name":"mui"}
2016-08-31 09:38