Каков наилучший способ справиться с ситуацией, в которой мне нужно показать только один из n div (на основе значения переменной) на угловой странице? - PullRequest
0 голосов
/ 10 января 2019

Я довольно новичок в Angular, и у меня есть следующие сомнения относительно того, что может быть лучшим способом условно показать div или другой div на странице.

В данный момент я делаю что-то вроде этого:

<div class="info-box" *ngIf="showSelectAOOUORLists">
    <div class="title-box">Lista AOO</div>
    <p-dropdown placeholder="Selezionare un AOO"
                [options]="aooList"
                [(ngModel)]="selectedAoo"
                optionLabel="Name"
                (onChange)="onChangeAoo($event)">
    </p-dropdown>

    <div *ngIf="selectedAoo">
        <div class="title-box" style="margin-top: 20px;">Lista UOR</div>
        <p-dropdown placeholder="Selezionare un reparto relativo all'AOO selezionato"
                    [options]="uorList"
                    [(ngModel)]="selectedUor"
                    optionLabel="UnitaOperativaResponsabile">
        </p-dropdown>
    </div>


    <div style="margin-top: 28px; width: 30%">
        <button *ngIf="selectedUor"
                type="button"
                pButton icon="fa-stamp"
                label="Invia al protocollo"
                (click)="inviaProtocollo($event)"></button>
    </div>

</div>

<div class="info-box" *ngIf="!showSelectAOOUORLists">
    <div class="title-box">La mail è stata inviata al protocollo</div>
</div>

Как вы видите, я использую директиву * ngIf , которая использует значение логической переменной в классе контроллера моего компонента.

Я думаю, что в простом случае, подобном этому (где, если я показываю div, мне нужно скрыть другой), все в порядке (поправьте меня, если это не так).

Но в случае, если у меня нет простого логического условия, и у меня может быть несколько div, которые можно показать и скрыть в базе определенного значения (например, у меня есть 5 div, должен быть показан только один. Div показан основывается на значении конкретной переменной). Я думаю, что избежать n ngIf может быть хорошей идеей.

Как лучше всего справиться с такой ситуацией?

...