Ребят, а у меня вопросик к вам на оценку быдлокодовости.
Есть такая ситуация: нужно импортить элементы в рантайме, при чем только нужные, причем нужной темы. При этом каждый элемент имеет сабимпорты, которые в виду архитектуры нужно импортировать. Так же некоторые саб елементы повторяются, потому добавлены проверки во избежание лишних операций. Для этого был написан модуль, который проходится по верхним импортам, собирает инфу о их сабимпортах и импортирует все элементы. Цикл в цикле короче.
Выглядит это все примерно так:
Я делаю
Manager.importElements(['lol', 'kek'])
Под капотом:
importElements( elems ) {
elems.forEach( elem => subimports[ elem ]
.forEach( subelem => import( subelem ) /*returns promise*/ ) );
}
Теперь задачка: я хочу так же в конце всего этого вернуть промис: типо все заимпортилось.
Нормально ли будет делать Promise.all от массива Promise.all-ов?
Как-то типо так
importElements( elems ) {
return Promise.all(
elems.map( elem =>
Promise.all( subimports[ elem ]
.map( subelem => import( subelem ) ) /*returns promise*/
) ) ).then( returntrueifok );
}