介绍
怎么在angularjs中同步执行http请求?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
<>强如下所示:强>
self.tableParams =, new NgTableParams ({}, { getData才能:function (params), { ,,,http.post美元(“休息/员工/page",, scope.req美元).success (function (数据),{ ,,,,,if (data !=, null ,,, data !=,未定义),{ ,,,,,,,scope.staffs 美元;=,data.data; ,,,,,,,params.total ($ scope.totalPage); ,,,,,} ,,,}). error (function (数据),{ ,,,,,(“# serverErrorModal")美元.modal({显示:真}); ,,,}); , ,,,return scope.staffs美元; ,,} });
上面这个示例中,getData方法要得到通过http美元请求返回的值,然而在angularjs中美元http永远都是异步的,也就是说返回的值将一直为空;
网上的例子都是通过美元q,承诺来实现,我试了但是不行,应该是我自己的问题
<强>然后突然想美元到http本身就返回一个承诺对象,何不直接使用? !代码如下强>
self.tableParams =, new NgTableParams({& # 39;计数# 39;:,10},,,{ getData才能:function (params), { ,,,var promise =, http.post美元(“休息/员工/page",, scope.req美元); ,,,return promise.then (function (结果),{ ,,,,,var response =, resut.data; ,,,,,var total =, response.otherData [0]; ,,,,,params.total(总); ,,,,,return response.data; ,,,}); , ,,} });
关于怎么在angularjs中同步执行http请求问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。