получить список всех задач в Angular

#angular #loops #filter #mapping

#angular #циклы #Фильтр #сопоставление

Вопрос:

Я получил список задач и массив подзадач, где мне нужно перебрать все tasks и отобразить данные. Но я получаю данные только для первого набора подзадач tasks . Например, из приведенных ниже данных я получаю только основную задачу 1 и ее подзадачи, но после этого она не повторяется во втором наборе task , т.е. Основной задачи 2 и ее подзадач.

 "tasks":[{"task":"main task 1","status":"pending","subtask":["subtask1","SubTask:2","SubTask:3","SubTask:4"],"_id":"5f75a789c58225229cddf077"},{"task":"Main task 2","status":"pending","subtask":["SubTask:1","SubTask:4"],"_id":"5f75a789c58225229cddf078"}]
  
     let i = 1
    tasks.map(x => {

      this[`subtask${i}`] = x.task

      x.subtask.filter(y => {
        for (let j = 1; j <= 5; j  ) {

          this[`detail${i - 1}${j}`] = x.subtask[j - 1]

        }

      });

      i  

    });
  

Ответ №1:

Надеюсь, это поможет вам :

 items = [
    {"task":"main task 1","status":"pending","subtask":["subtask1","SubTask:2","SubTask:3","SubTask:4"],"_id":"5f75a789c58225229cddf077"},
    {"task":"Main task 2","status":"pending","subtask":["SubTask:1","SubTask:4"],"_id":"5f75a789c58225229cddf078"}
];

mapped = this.items.map(item => {
    console.log(item.task)
    console.log(item.subtask)
});