#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)
});