我有一些代码:
$scope.offer = [];
function offer (Details) {
angular.forEach(Details, function (product) {
$scope.offer = SomeAPI.ById.query({ product: id }, function (response) {
$scope.offer.push(response);
});
});
console.log($scope.offer);
}
控制台出错:$ scope.offer.push不是函数。
答案 0 :(得分:2)
在推送值
之前初始化数组 $scope.offer = [];
angular.forEach(Details, function (product) {
$scope.offer = SomeAPI.ById.query({ product: id }, function (response) {
$scope.offer.push(response);
});
});
答案 1 :(得分:1)
为什么要分配' $ scope.offer'返回API调用的类型。
$scope.offer = SomeAPI.ById.query({ product: id }, function (response) {
这会更改' $ scope.offer'来自' []'数组类型可能是api返回的promise对象。这就是为什么push方法不适合你。
正确的代码应该是:
$scope.offer = [];
function offer (Details) {
angular.forEach(Details, function (product) {
SomeAPI.ById.query({ product: id }, function (response) {
$scope.offer.push(response);
});
});
console.log($scope.offer);
}