我有一个组件(树部件)它看起来像这样:保存组件状态[角]
<div *ngFor="let foo in foos">
<span (click)="isCollapsed[foo.id] = !isCollapsed[foo.id]">{{ foo.name }}</span>
<div class="container" [ngClass]="{'hidden': isCollapsed[foo.id]}">
<div *ngFor="let bar in foo.bars">
<a [routerLink]=".......">{{ bar.name }}</a>
</div>
</div>
</div>
我有两个层次,第二个层次是隐藏/在第一级单击元素的名称时显示。
的问题是,每次我在第二级的节点上单击时间,树失去了它的状态(关闭节点获得再次打开,反之亦然)。
我知道这是因为Angular的路由器是如何重新绘制所有组件的,我知道我可以使用本地存储破解一些解决方案来坚持isCollpased
的状态,但我想知道是否有一个这样我就可以使角记得组件的状态,并自动应用它,甚至更好,只是重复使用它在某种程度上代替重新加载/重新绘制的。那可能吗?