繁体   English   中英

将对象放入AngularJS中的数组

[英]Put an object into an array in AngularJS

我正在为应用程序使用ag-grid,它只需要数组即可显示行。 我有一个从API返回的对象。 此调用始终仅返回1个对象。 我想将对象转换为长度为1的数组。这是我的代码:

jobResult.paged().$promise.then(function (results) {
    //ag-grid needs the result to be in an array
    var arrayResult = [];
    angular.forEach(function(results){
        arrayResult.push(results);
    });
    $scope.jobResult = arrayResult;

    if ($scope.lastResultGridOptions.api) {                         
      $scope.lastResultGridOptions.api.setRowData($scope.jobResult);
                            $scope.lastResultGridOptions.api.sizeColumnsToFit();
}
..rest of function

results对象具有来自API的数据。 但是.foreach函数不会将对象推入数组。 我想念什么?

您的angular.foreach错误,

正确的方法是,然后您可以获取键或值并推送到数组,

 angular.forEach(results, function(value, key){
       //push key or value
       arrayResult.push(value);
   });

为了便于说明,想要一个数组长度为1且结果为[0]的原因,为什么不将结果推入数组:

arrayResult.push(results)

如果您尝试从结果创建数组,则需要对结果运行.forEach:

results.forEach(function(res) { arrayResult.push(res); })

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM