欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解決angularjs中同步執(zhí)行http請(qǐng)求的方法

 更新時(shí)間:2018年08月13日 09:29:20   作者:方塊糖  
今天小編就為大家分享一篇解決angularjs中同步執(zhí)行http請(qǐng)求的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

如下所示:

self.tableParams = new NgTableParams({}, {
  getData: function (params) {
    $http.post("rest/staff/page", $scope.req).success(function (data) {
      if (data != null && data != undefined) {
        $scope.staffs = data.data;
        params.total($scope.totalPage);
      }
    }).error(function (data) {
      $("#serverErrorModal").modal({show: true});
    });
 
    return $scope.staffs;
  }
});

上面這個(gè)示例中,getData方法要得到通過$http請(qǐng)求返回的值,然而在angularjs中$http永遠(yuǎn)都是異步的,也就是說return的值將一直為空;

網(wǎng)上的例子都是通過$q,promise來實(shí)現(xiàn),我試了但是不行,應(yīng)該是我自己的問題

然后突然想到$http本身就返回一個(gè)promise對(duì)象,何不直接使用?!代碼如下

self.tableParams = new NgTableParams({'count': 10} , {
  getData: function (params) {
    var promise = $http.post("rest/staff/page", $scope.req);
    return promise.then(function (resut) {
      var response = resut.data;
      var total = response.otherData[0];
      params.total(total);
      return response.data;
    });
 
  }
});

直接這樣return就可以實(shí)現(xiàn)同步獲取數(shù)據(jù)了~

以上這篇解決angularjs中同步執(zhí)行http請(qǐng)求的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論