Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs Angularfire forEach键返回未定义_Angularjs_Firebase_Angularfire - Fatal编程技术网

Angularjs Angularfire forEach键返回未定义

Angularjs Angularfire forEach键返回未定义,angularjs,firebase,angularfire,Angularjs,Firebase,Angularfire,我有一些数据 { "projects" : [ { "projectName" : "Test Project 1", "dueDate" : "20/05/2014", "owner" : "Test owners 1", "categories" : [ "JavaScript", "HTML",

我有一些数据

{
    "projects" : [
        {
            "projectName" : "Test Project 1",
            "dueDate" : "20/05/2014",
            "owner" : "Test owners 1",
            "categories" : [
                "JavaScript",
                "HTML",
                "CSS"
            ],
            "open" : true,
            "tasks" : [
                {
                    "taskName" : "Test task 1",
                    "targetDate" : "02/04/2014",
                    "categories" : [
                        "JavaScript",
                        "HTML",
                        "CSS"
                    ],
                    "open" : true
                },
                {
                    "taskName" : "Test task 2",
                    "targetDate" : "10/04/2014",
                    "categories" : [
                        "JavaScript",
                        "HTML"
                    ],
                    "open" : true
                }
            ]
        },
        {
            "projectName" : "Test Project 2",
            "dueDate" : "12/07/2014",
            "owner" : "Test owners 2",
            "categories" : [
                "JavaScript",
                "HTML",
                "CSS"
            ],
            "open" : true,
            "tasks" : [
                {
                    "taskName" : "Test task 1",
                    "targetDate" : "13/05/2014",
                    "categories" : [
                        "HTML",
                        "CSS"
                    ],
                    "open" : true
                },
                {
                    "taskName" : "Test task 2",
                    "targetDate" : "03/06/2014",
                    "categories" : [
                        "JavaScript"
                    ],
                    "open" : true
                }
            ]
        }
    ]
}
然后我有一个简单的控制器,它试图输出每个数组索引中包含的对象

TM.factories.getData = function(){
    var getProjects = new Firebase("https://<my-firebase>.firebaseio.com/projects");
    return getProjects;
};

TM.controllers = {};

TM.controllers.overviewCtrl = function($scope,$firebase){
    var taskArr = [];
    $scope.projectList =  $firebase(TM.factories.getData());
    $scope.projectList.$on("loaded", function() {
        $scope.projectList.$getIndex().forEach(function(key,i) {
            console.log($scope.projectList[key]);
        });
    });
};
TM.factories.getData=function(){
var getProjects=newfirebase(“https://.firebaseio.com/projects");
返回项目;
};
TM.controllers={};
TM.controllers.overviewCtrl=函数($scope,$firebase){
var taskArr=[];
$scope.projectList=$firebase(TM.factories.getData());
$scope.projectList.$on(“已加载”,函数(){
$scope.projectList.$getIndex().forEach(函数(键,i){
log($scope.projectList[key]);
});
});
};
不用担心它的布局,我正在尝试用不同的方式编写它,这是非常早期的开发工作

问题是为什么我在使用“key”或“I”时变得未定义?如果我只记录“key”或“I”,我得到0,1。

你能试试这个吗:

TM.controllers.overviewCtrl = function($scope,$firebase){
    var taskArr = [];
    $scope.projectList =  $firebase(TM.factories.getData());
    $scope.projectList.$on("loaded", function(projectList) {
        projectList.$getIndex().forEach(function(value,key) {
            console.log(projectList[key]);
        });
    });
};

谢谢,现在说得通了