Я, вероятно, делаю что-то глупое здесь. У меня есть аккордеон с несколькими группами. Когда один из них открыт, остальные должны закрыться, а когда над одним выполнено действие, открывается следующий. Очевидно, вы можете go вернуться (как степпер).
Базовый c формат таков:
<accordion closeOthers="1">
<accordion-group (isOpenChange)="state.categoriesOpen = !state.categoriesOpen"
[isDisabled]="!categories?.length"
[isOpen]="state.categoriesOpen">
<div class="btn btn-link"
accordion-heading>
<span>1.
<span *ngIf="!chosenCategory || !criteria"> Choose category</span>
<span *ngIf="chosenCategory && criteria"> Category | <b>{{chosenCategory?.name}}</b></span>
</span>
<mat-icon>{{ state.categoriesOpen ? 'expand_less' : 'expand_more' }}</mat-icon>
</div>
<!-- some content here -->
</accordion-group>
</accordion>
В моем коде я определил этот объект состояния:
state: any = {
categoriesOpen: true,
criteriaOpen: false,
attributesOpen: false,
formulasOpen: false,
};
По умолчанию первая группа открыта. Но по какой-то причине он просто висит здесь навсегда. Когда я удаляю [isOpen] , он работает.
Кто-нибудь знает, почему это сломано?