Как передать данные в angularjs foreach внутри foreach

В предыдущих ответах все работают, чтобы найти уникальные общие элементы, но не будут учитывать повторяющиеся элементы в списках. Если вы хотите, чтобы общие элементы отображались с тем же номером, что и их общий список в списках, вы можете использовать следующий однострочный:

l2, common = l2[:], [ e for e in l1 if e in l2 and (l2.pop(l2.index(e)) or True)]

Часть or True необходима только в том случае, если вы ожидаете, что какие-либо элементы будут оцениваться с помощью False.

1
задан Meister96Fels 18 January 2019 в 12:16
поделиться

1 ответ

Вы можете создать промежуточный объект, чтобы иметь возможность толкать внутри текущего элемента. Сейчас вы не можете, потому что вы нажимаете $scope.tempObj.nested, который не существует, существует только $scope.tempObj[index].nested, потому что $scope.tempObj является массивом.

angular.forEach($scope.data, function(data) {
  const element = {
    id: data.policyNo,
    renewalNo: data.renewalNo,
    endorsementNo: data.endorseNo,
    product: data.productDesc,
    insuredName: data.holderName,
    periodOfInsurance: data.fromDate + " to " + data.toDate,
    nested: []
  };

  angular.forEach(data.policyDocumentContentCollection, function(docs) {
    element.nested.push({
      docName: docs.docType
    });
  });

  $scope.tempObj.push(element);
});
0
ответ дан Samuel Vaillant 18 January 2019 в 12:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: