использование ngfor с динамическими наблюдаемыми внутри другого ngfor

#angular

#angular

Вопрос:

проблема в том, что я хочу вызвать rest api для получения данных и заполнения их с помощью ngFor, но мой rest api получает значение, и это значение поступает из другого ngfor на более высоком уровне. после запуска программы вложенный ngfor переходит в бесконечный цикл, который, я полагаю, связан с детектором изменений.

Я перепробовал много вариантов, например, я полностью отключил детектор изменений, но это было бесполезно, я также понял, что моя проблема в том, что мой rest api получает значение и зависит от другого ngfor, поэтому я не могу поместить его в свой файл typescript

 <div class="row" *ngFor="let item of requirementElementsList;">
    <input *ngIf="item.elementType == 1">
    <select *ngIf="item.elementType == 2">
        <option class="option"
                *ngFor="let elementOption of getElementOptions(item.elementId) | async">
            {{elementOption.title}}
        </option>
    </select>
</div>
 

Комментарии:

1. Привет, Садра, в этих сценариях, я думаю, действительно важно видеть всю картину, чтобы люди могли воспроизводить.. и html не очень помогает понять, что происходит за кулисами.. например, для компонента.. вы можете использовать что-то вроде stackblitz.com создать рабочий фрагмент и попросить кого-нибудь просмотреть его..

2. tnx для вашего комментария да, я это знаю, но проблема в том, как я могу создать rest api в stackblitz. как я могу иметь виртуальную базу данных, которую я могу отправлять и получать из нее данные моя фактическая база данных находится в локальной сети, и к ней нет доступа

3. Привет, одно предложение с моей стороны, вы можете попробовать использовать реактивную форму angular. но это не связано с вашей проблемой. Чтобы понять, почему вы сталкиваетесь с бесконечным циклом, нужно прочитать, чтобы получить ваш код. попробуйте создать stackblitz, как говорит mjoia. и он думает, что вы можете сначала получить все данные, а затем просто сопоставить их, чтобы получить параметры.

4. @sadraseyfi вы можете издеваться над данными .. добавить тайм-аут для задержки, но я понимаю вашу точку зрения