【发布时间】:2019-08-14 14:34:45
【问题描述】:
我正在使用 Angular Material mat-tab,每个选项卡都有动态表单的内容。
我正在尝试使用延迟加载方法,以避免在开始时加载所有选项卡内容,并且只加载每个选项卡以提高性能,特别是在 Internet Explorer 中。
我遇到的问题是每次我更改它并丢失我输入的数据时它都会重新加载选项卡。
有什么建议可以在这里使用延迟加载吗?
<mat-tab-group [(selectedIndex)]="selectedTab"
(selectedIndexChange)="tabChange($event)">
<mat-tab #tab *ngFor="let page of dataset; let tabIndex =
index; trackBy: tabIndex;" [label]="page.title">
<ng-container *ngFor="let section of
page.groupedSections">
//I am loosing the data here if i do lazy-loading
<dynamic-form [fields]="section.fields"></dynamic-form>
</ng-container>
</mat-tab>
</mat-tab-group>
【问题讨论】:
-
来自official docs 关于角度材料延迟加载,它说可以通过在具有 matTabContent 属性的 ng-template 中声明主体来延迟加载选项卡内容。 你可以也可以参考this thread和this thread提供的方法。
标签: angular angular-material internet-explorer-11 angular7 lazy-loading