我试图从角度范围内获取数组中的所有对象。我使用jQuery来获取数组,但我不知道如何从数组中获取每个对象而不必像[0]那样定义它。
angular.element("#scopes").scope().fixtures;
这给了我:
Array[380]
然后我可以从中选择,但我需要一次性完成它们。
感谢。
答案 0 :(得分:1)
编辑:这是我实施此解决方案的方法。请注意,它不再使用任何jQuery。它从API检索数据,然后遍历数组中的每个项目,允许您使用它执行所需的操作。 angular.forEach Docs
// In your angular controller...
$http({
url: "myApiUrl",
method: "GET",
cache: false,
params: {
//whatever API params you want to pass
}
}).then(function successCallback(response) {
$scope.fixtures = response.data;
$scope.fixtures.forEach(function (element, index) {
// do what you want - as per your comments...
console.log("Element: " + index);
console.log("Status: " + element.status);
console.log("________________________________");
});
}, function failureCallback() {
alert("There was an error retrieving the data!");
});
答案 1 :(得分:1)
要回答您的具体问题,听起来您想映射结果:
var statuses = angular.element("#scopes").scope().fixtures.map(function(fixture) {
return fixture.status;
});
然而,感觉您应该能够从模型中获取此数据,而不是试图将其从您的视图中拉出来。