使用 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)