Ich bin relativ neu in AngularJS und ich bekomme einen Fehler, den ich nicht vollständig verstehe. Auf diesem Codeblock erhalte ich einen Typfehler (unten aufgeführt). Der Fehler verweist mich auf die Zeile mit sprint.users, die ein Array von Benutzern ist.Getting TypeError auf angular.forEach
$scope.countThisUserSprintsCompleted = function (user) {
var thisUserTotalSprintsCompleted = 0;
angular.forEach($scope.sprints, function(sprint) {
angular.forEach(sprint.users, function (sprintUser, index) {
if(sprintUser.username == user.username && sprint.status == 'complete') {
thisUserTotalSprintsCompleted++;
}
});
});
return thisUserTotalSprintsCompleted;
};
angular.js:13642 TypeError: Cannot read property 'users' of undefined
at userController.js:2123
at Object.q [as forEach] (angular.js:336)
at m.$scope.countThisUserSprintsCompleted (userController.js:2122)
at fn (eval at compile (angular.js:14539), <anonymous>:4:357)
at m.$digest (angular.js:17211)
at angular.js:17417
at e (angular.js:5912)
at angular.js:6191
Es bedeutet, dass 'sprint' mit dem bereitgestellten Code nicht definiert ist. –
Nicht so schnell @hängt, schauen Sie sich die Zeile über – Damiano
@Damiano können Sie setzen, was Sie wollen, als param, bedeutet nicht, dass sie definiert werden, wenn sie aufgerufen werden. –