我想创建一个动态数量的菜单,其中包含动态数量的子菜单。
<ng-container *ngFor="let menu of menus">
<button *ngIf="menu.routerLink" [routerLink]="[menu.routerLink]" mat-button>{{menu.label}}</button>
<ng-container *ngIf="menu.items && menu.items.length > 0">
<button mat-button [matMenuTriggerFor]="menu">{{menu.label}}</button>
<mat-menu #menu="matMenu">
<button *ngFor="let item of menu.items" [routerLink]="[item.routerLink]" mat-menu-item>{{item.label}}</button>
</mat-menu>
</ng-container>
</ng-container>
但我知道
错误错误:ExpressionChangedAfterItHasBeenCheckedError:检查表达式后,表达式已更改。先前的值:“ ngForOf:未定义”。当前值:“ ngForOf:”。
我相信这是因为重复了#menu =“ matMenu” 和 [matMenuTriggerFor] =“菜单” 。
如何动态更改它们?
ie:[matMenuTriggerFor] = 对变量的引用和 #a对变量的引用 =“ matMenu”