AngularJS - 在应用启动期间加载工厂结果

时间:2015-11-26 18:05:15

标签: angularjs ionic-framework

我有多个控制器文件,其中我试图在控制器被触发后立即从工厂加载结果。我正在加载用户信息。目前,当页面加载时,它只显示当我点击刷新所有信息显示时。

如何解决此问题以消除对刷新按钮的需求?

这是我在控制器主体中的代码:

var currentUser = Parse.User.current();    

if (currentUser) {
    // do stuff with the user
    $scope.tempUserObject = UserDetails.overallDetails();
} else {
    // show the signup or login page
    $scope.logout();
}

1 个答案:

答案 0 :(得分:0)

你只返回工厂的承诺。 e.g:

<强>控制器

var currentUser = Parse.User.current();    

if (currentUser) {
    // do stuff with the user
    $scope.tempUserObject = UserDetails.overallDetails().success(function(response){
      console.log(response);
   }).error(function(error){
      console.log("Error = "+error);
   });
} else {
    // show the signup or login page
    $scope.logout();
}

<强>工厂

app.factory('UserDetails', ['$http', function($http){
return {
    overallDetails : overallDetailsFun
 }

function overallDetailsFun(){

  return {
          $http.get("127.0.0.1/api/details");
      }
 }
}]);