小编whw*_*ony的帖子

当列中存在 *ngIf 时,mat-table 中出现 ExpressionChangedAfterItHasBeenCheckedError

使用 mat-table 过滤器和我的专栏之一时,我收到 ExpressionChangedAfterItHasBeenCheckedError

<mat-icon *ngIf="parseString(element.blacklisted)" matTooltip="{{'black_listed'|translate}}" class="warning">thumb_down</mat-icon>
Run Code Online (Sandbox Code Playgroud)

我正在使用 Angular 7 和自定义响应式风格。我发现如果我删除这个 *ngIf 代码,响应式样式仍然会给我同样的错误与这行代码

<span class="mobile-label">{{'name_label'|translate}}:</span>
Run Code Online (Sandbox Code Playgroud)

错误信息是这样的:

ERROR Error: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: 'ngIf: undefined'. Current value: 'ngIf: false'. It seems like the view has been created after its parent and its children have been dirty checked. Has it been created in a change detection hook ?
    at viewDebugError (core.js:16657)
    at expressionChangedAfterItHasBeenCheckedError (core.js:16645)
    at checkBindingNoChanges (core.js:16747)
    at checkNoChangesNodeInline (core.js:19618)
    at checkNoChangesNode (core.js:19607)
    at debugCheckNoChangesNode …
Run Code Online (Sandbox Code Playgroud)

angular-material angular

2
推荐指数
1
解决办法
1686
查看次数

标签 统计

angular ×1

angular-material ×1