Angularjs需要等待服务器的响应,类似于回调
angularjs to wait for response from server, similar to callback
我遇到了一个问题,客户端不等待服务器响应。我有一个大的查询,运行在服务器上并返回数据。但是在客户端,它在处理数据之前不等待服务器的响应。我尝试过angularjs .then函数,但没有成功。服务为"myService",如下所示。
this.getJsonData = function() {
var searchData = caller.get("/metadata/Search").then(function(result){
return result.data;
});
return searchData;
};
呼叫业务
myService.getJsonData().then(
function(data) {
formatData(data);
},
function(err) {
console.log("Error here" + err);
});
现在调用了formatData,而服务器调用的响应在getJsonData中等待。
有谁能帮我解决这个问题吗?
********** 编辑 **********试过了,但也不工作
this.getJsonData = function() {
var deffered = $q.seDefer();
caller.get("/metadata/Search").then(function(result){
deffered.resolve(result.data);
});
return deffered.promises;
};
下面是一个如何在长时间运行的调用中使用承诺的示例:http://fiddle.jshell.net/82vLx76y/
通过从函数返回承诺,我们可以延迟另一个链式函数的执行,并利用第一个函数的返回值。更多信息参见Angular的$q服务文档:https://docs.angularjs.org/api/ng/service/$q
相关文章:
- Javascript日期格式类似于ISO,但本地
- toBoolean方法类似于toString
- 州和城市选择框类似于国家细分页面
- 通过传递图像的URL通过javascript读取/处理图像-类似于PHP中的file_get_contents
- 在BootStrap菜单栏中为所选项目设置背景,类似于BootStrap中的父导航选项
- 检测演示者工具的事件,类似于onmousedown
- 类似于Prism的Knockout js框架
- 创建类似于Google analytics的分析地图
- 敲除js变量设置类似于调用函数
- 如何处理javascript中的循环引用,类似于Excel提供迭代限制的方式
- 用null填充稀疏数组(类似于压缩两个数组)
- jQuery模态弹出的行为类似于确认和警报对话框
- 如何垂直淡出文本,类似于Amazon'的产品说明
- 如何在JavaScript中创建类似于something.function()的函数
- 使Dockerfile VOLUME的行为类似于docker compose volumes
- TypeScript代码类似于揭示模块模式结构
- E4X中是否有一种方法可以将基元数据类型的XMLList转换为类似于Array.join()的Array
- Angularjs需要等待服务器的响应,类似于回调
- 使 HTML
类似于 Zurbs 响应式表 - 我如何在ajax调用中使用响应来在react中的jsx中设置一个值,类似于Angular 2中的filter/pipes