【问题标题】:angular JS $http.get returns array, trying to put each array in $scopeangular JS $http.get 返回数组,试图将每个数组放入 $scope
【发布时间】:2014-06-12 20:05:33
【问题描述】:

我在我的 Angular JS 中使用这个 $http.get 调用:

$scope.exportData = [];

$http.get('/reports?UserId=1').then(function (result) {
       $scope.exportData = result.data
});

$scope.exportData 返回空白 :(

但是当我调试这个时,我看到result.data 正在被填充并且result.data 中有5 个数组...我的问题是我如何将每个数组放入$scope.exportData result.data 有一个长度值为 5。也许我可以用它来做一个 foreach?我会知道如何通过 javascript/jquery/angular js 在 php 中做到这一点,我是新手。任何帮助将不胜感激。

这是为 results.data 填充的内容的屏幕截图:

谢谢, J

【问题讨论】:

  • 向我们展示您的 HTML,您如何知道 $scope.exportData 为空白?您使用的是batarang 还是ng-inspector?我猜您正在将 $scope.exportData 设置为您的 5 项数组。您可能没有在 HTML 中正确实现它。

标签: javascript jquery arrays angularjs


【解决方案1】:

也许嵌套函数没有被调用。 $http.get([url]) 是一个有效的快捷方式,因此可能会填充 result.data,但是您没有指定成功或失败的回调。

或许可以试试:

$http.get('/reports?UserId=1').success(function (result) {
     $scope.exportData = result;
});

【讨论】:

    【解决方案2】:

    result.data 后缺少分号

    也可以试试

    angular.forEach(result.data, function(item) {
      // set a break point here:
      $scope.exportData.push(item);
    });
    

    【讨论】:

    • $scope.exportData 最后仍然显示为空白,我进行了一些调试,项目没有任何内容
    • 每个数组都是一个对象
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-19
    • 1970-01-01
    • 2018-12-03
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    • 1970-01-01
    相关资源
    最近更新 更多