【问题标题】:How to use array methods with promise returned arrays如何将数组方法与 promise 返回的数组一起使用
【发布时间】:2016-02-18 00:45:14
【问题描述】:

伙计们,我在数据库中有一个对象数组,我使用了 $http.get,我知道它作为一个承诺返回并且不能使用 push() 或 forEach(),但我需要在数组中使用此方法或然后将值扔到另一个数组,然后使用这些方法。 我该怎么做?谢谢

$http.get('/api/itens').success(function(itens){
  $scope.itens= itens;
  socket.syncUpdates('itens', $scope.itens);    
});

var arr = []

$scope.itens.forEach(function(value){
  arr.push(value.name);

});

【问题讨论】:

  • 只需将处理items 的代码放入回调中?
  • 如果它返回一个promise,只需通过then链式调用将数组分配给你的promise

标签: javascript arrays angularjs foreach promise


【解决方案1】:

如果itens 是一个数组,您可以对它进行forEach,但只有在它返回之后

$http.get('/api/itens').success(function(itens){
  $scope.itens= itens;
  socket.syncUpdates('itens', $scope.itens);    

var arr = []

  $scope.itens.forEach(function(value){
    arr.push(value.name);

  });
});

【讨论】:

    猜你喜欢
    • 2013-09-03
    • 2019-12-21
    • 2019-07-02
    • 1970-01-01
    • 2017-04-23
    • 1970-01-01
    • 2016-07-01
    • 2016-07-23
    • 1970-01-01
    相关资源
    最近更新 更多