AngularJs从self调用内部服务函数

我已经构建了一个提出多个请求的简单服务.该服务有两种方法.我无法在服务中调用另一个方法.

普兰克:http://plnkr.co/edit/2fERik4uTxbxlVOhncMd?p=preview

app.factory('Report',['$http',function($http){
var Authors = {

    reports : [],requests :[{'url':'data/data.cfm','response':'first'},{'url':'data.json','response':'second'},'response':'third'},'response':'forth'}],getReport : function(target,source,response,callback) {
    return $http({  url:source,method:"POST",params:{url : target}
                }).success(function(result) {
                    $scope.progress = response;
                    angular.extend($scope.user,result)
                    console.log($scope.user)
      }
      ).error(function(error){
                    $scope.progress = response
                })
},startQueue : function (target) {
        var promises = [];
        this.requests.forEach(function (obj,i) {
            console.log(obj.url)
            promises.push(getReport(target,obj.url,obj.response,function(value){
                reports.push(value);
                console.log(value)
            }));
        });
        $q.all(promises).then(function () {
            console.log("Finito");
        },function(error){
            console.log("errori")
        });
    }

};

return Authors;
}])

当我尝试从startQueue内部调用getReport时,我得到错误:未定义getReport.

将您的工厂更改为:
app.factory('Report',function($http){
    var Authors = {

        reports : [],};

    Authors.getReport = function(target,callback) {

    };
    Authors.startQueue = function (target) {

    };

    return Authors;
}])

相关文章

AngularJS 是一个JavaScript 框架。它可通过 注:建议把脚本放在 元素的底部。这会提高网页加载速度,因...
angluarjs中页面初始化的时候会出现语法{{}}在页面中问题,也即是页面闪烁问题。出现这个的原因是:由于...
AngularJS 通过被称为指令的新属性来扩展 HTML。AngularJS 指令AngularJS 指令是扩展的 HTML 属性,带有...
AngularJS 使用表达式把数据绑定到 HTML。AngularJS 表达式AngularJS 表达式写在双大括号内:{{ expres...
ng-repeat 指令可以完美的显示表格。在表格中显示数据 {{ x.Name }} {{ x.Country }} 使用 CSS 样式为了...
$http是 AngularJS 中的一个核心服务,用于读取远程服务器的数据。读取 JSON 文件下是存储在web服务器上...