javascript - 将 Promise 与 angular.js 一起使用

标签 javascript angularjs promise

我在前面使用 angular.js。

在我的controller.js 中,我定义了一个 init() 方法,该方法将在

中调用

初始化我的 Controller 。

初始化方法定义:

var init = function () {
$scope.callTeamsService();
if ($scope.teams.length == 0){
....
}else{
...
}
.....

};

$scope.callTeamsService中,我填写了$scope.teams变量。

$scope.callTeamsService方法定义:

$scope.callTeamsService = function(){
        NavService.getTeams(function (response) {
                $timeout(function () {
                    $scope.teams = response;                        
                    }
                }, 200);
            });
    };

在我的 service.js 中,我定义了一个 getTeams 方法,如下所示:

service.getEquipes = function (callback) {
$http.get(urlBase+'users/' + $rootScope.globals.currentUser.loggedUser.idUser + '/teams')
                    .success(function (response) {
                        callback(response);
                    });
            };

我的问题是当达到$scope.teams.length == 0条件时

service.getEquipes 我的 service.js 中的方法尚未调用。

如何修改此代码以便在达到 $scope.teams.length == 0 条件之前完成 $scope.callTeamsService 方法的执行。

最佳答案

  service/factory

   service.getEquipes = function () {
        return $http.get(urlBase+'users/' + $rootScope.globals.currentUser.loggedUser.idUser + '/teams');

        };


 // controller 
    var promise = NavService.getTeams.then (
           function(data) {
             //assign to $scope or do logic
           },
           function(err){
               console.log(err)
           } 
      )

关于javascript - 将 Promise 与 angular.js 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31006429/

相关文章:

javascript - 使用矩形选择框选择 SVG 元素在缩放期间不起作用 : d3. js

javascript - Angularjs 中的内联编辑保存项目

node.js - 如果在 lambda Node 场景中捕获错误,则继续 Promise.all 循环

javascript - 长的单页站点在页面中间而不是顶部打开

javascript - react : Understanding import statement

javascript - Python从<script> html标签内获取数据值

javascript - 在单独的 js 文件中带有 Controller 的 Angular ui 模式

java - AngularJS 抛出错误根路径

javascript - 在带有辅助函数的 ejs 中使用 .then 返回 [ object promise ]

javascript - 当从 Angular 工厂调用时,API $http delete 返回 405