Error: [$rootScope:inprog] http angularjs



加载页面时,我希望从数据库加载数据。我通过angular的http模块获取数据,如下所示:

var getdata = function(){
    var params = {
        userId : 123,
    };
    $http.post("url", params)
    .success(function(data,status,headers,config){
        alert("success");
    }).error(function(){
        alert("Failed to connect with server");
    });
};

在我的控制器中,我创建了一个名为onLoad的函数,并调用它如下:

var onLoad = function(){
    getData();
    console.log("load page");
};
onLoad();

但是,当我导航到该页面时,会出现以下错误错误:[$rootScope:inprog]http://errors.angularjs.org/1.5.0/$rootScope/inprog?p0=%24摘要

可能出了什么问题?非常感谢。

您的代码中有一个小错误,这里显示的是拼写错误getData()调用不正确,因为您用getdata()定义了函数。

我用你的代码创建了一个小提琴,它工作得很好。

angular.module('myApp', [])
  .controller('myCtrl', function($scope, $http) {
    $scope.sendPost = function() {
      var data = $.param({
        json: JSON.stringify({
          name: $scope.newName
        })
      });
      onLoad(data);
    }
    var getdata = function(data) {
      $http.post("/echo/json/", data)
        .success(function(data, status) {
          console.log(data)
          $scope.hello = data;
        })
    };
    var onLoad = function(data) {
      getdata(data);
      console.log("load page");
    };
    $scope.hello = {
      name: "Boaz"
    };
    $scope.newName = "";
  })

此错误不是由您在此处显示的代码累积的。解决此错误后,请使用相关代码更新您的问题。

希望它能帮助

这是获取数据的方法,还有一件事我不知道你在控制器中添加了什么dependencies,如果你没有添加,那么这是正确的方法

      var app = angular.module('myApp', []);
      app.controller('myCtrl', function($scope, $http) {
     $http({
     method : "POST",
    url : Your Url
}).then(function mySucces(response) {
    $scope.myWelcome = response.data;
}, function myError(response) {
    $scope.myWelcome = response.statusText;
});
  });

最新更新