javascript - 在 jQuery $.get() 中,angular $q.all() 是否有第二次成功

标签 javascript ajax angularjs http

查看 jQuery 文档我发现了以下内容:

$.get( "example.php", function() {
  alert( "success" );
})
  .done(function() {
    alert( "second success" ); <---
  })
  .fail(function() {
    alert( "error" );
  })
  .always(function() {
    alert( "finished" );
  });

我需要在进行几次 ajax 调用后在 Angular Controller 中执行一个方法,如下所示:

 $q.all([
            $http.get(ROOT + "Lookup/GetStates"),
            $http.get(ROOT + "Lookup/GetCountries"),
            $http.get(ROOT + "Address/GetAddresses"),
        ]).then(function (results) {
            $scope.states = jQuery.parseJSON(results[0].data.data);
            $scope.country = jQuery.parseJSON(results[1].data.data);
            $scope.addresses = jQuery.parseJSON(results[3].data);
        });

then 执行后(仅在 then 之后) 我需要调用一个方法 $scope.setupControls()

这有可能吗?

最佳答案

为什么你不能这样做:

   $q.all([
        $http.get(ROOT + "Lookup/GetStates"),
        $http.get(ROOT + "Lookup/GetCountries"),
        $http.get(ROOT + "Address/GetAddresses"),
    ]).then(function (results) {
        $scope.states = jQuery.parseJSON(results[0].data.data);
        $scope.country = jQuery.parseJSON(results[1].data.data);
        $scope.addresses = jQuery.parseJSON(results[2].data);
        $scope.setupControls();
    });

我觉得没必要二次成功。保持简单(和性感?)

关于javascript - 在 jQuery $.get() 中,angular $q.all() 是否有第二次成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29794441/

相关文章:

ruby - 如何使用 ajax 将 json 对象传递给 Controller ​​?

javascript - Angularjs - 文本区域自动增长

javascript - 表中的双 *ngFor - Angular 2

javascript - 如何在react-native中渲染多个组件并设置单独的状态?

javascript - 如何使用javascript在字符串中搜索单词

ajax - 反 CSRF token 和 Javascript

javascript - 使用 JavaScript 和 XHTML : XMLHttpRequest's open/send do not work if before onreadystatechange

javascript - 优化 Ionic App 中的大 ListView

javascript - 自定义过滤器出现问题,我缺少什么?

javascript - react + MongoDB 端口