[英]ExpressionChangedAfterItHasBeenCheckedError when testing Angular Material Table
使用Angular 7我使用ng generate @angular/material:table test-table
將材質表添加到我的應用程序ng generate @angular/material:table test-table
在生成的模板中有一個paginator:
<mat-paginator #paginator
[length]="dataSource.data.length"
[pageIndex]="0"
[pageSize]="50"
[pageSizeOptions]="[25, 50, 100, 250]">
</mat-paginator>
在init上,數據源已更改:
ngOnInit() {
this.dataSource = new ItemsTableDataSource(
this.paginator,
this.sort,
this.route.paramMap,
this.afs
);
}
當試圖在Karma expect(component).toBeTruthy();
編譯組件時 我收到以下錯誤
Error: ExpressionChangedAfterItHasBeenCheckedError: Expression has
changed after it was checked. Previous value: 'length: 0'. Current
value: 'length: 1'.
我該如何解決這個問題?
不知道它是多么猶豫,但在我的情況下,我只是從spec文件中刪除了'fixture.detectChanges()'調用。 我正在使用A6 ReactiveForm,在測試中設置一些初始虛擬日期范圍值。 表單工作正常但測試因錯誤而失敗。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.