【发布时间】:2015-07-31 14:25:38
【问题描述】:
我正在构建一个 Angular 应用程序,有很多 ajax 调用。 我需要等待每个呼叫响应才能从中获取数据,这就是我制作的原因 同步。
$.ajax({
type: "POST",
url: servicePath,
cache: false,
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
data: "{}",
success: success,
error: error
});
但这是一个问题,因为如果我调用“showPleaseWait()”(这是一个加载弹出窗口)它不会显示,因为除非 ajax 调用未完成,否则 DOM 不会更新。 它显示了我是否会让我的呼叫异步,但那时我无法获取我的数据。
拜托,你能帮我解决这个问题吗?
【问题讨论】:
-
通过学习如何管理回调而不是使用(已弃用)同步请求来解决您的问题。
-
在
$.ajax之前调用showPleaseWait(),并在success或error回调中调用hidePleaseWait()。异步是 Ajax 的强大功能,为什么不呢?
标签: javascript jquery ajax angularjs asynchronous