在Angular Material中,当页面中的元素动态添加时,Angular Material可能会导致已添加元素的样式更新,甚至在离开元素时也会发生。为了解决这个问题,可以使用Angular的 ChangeDetectorRef 来手动更新更改检测。
以下是解决方法的代码示例:
import { Component, ChangeDetectorRef } from '@angular/core';
constructor(private cdRef: ChangeDetectorRef) {}
ngAfterViewInit() { // 动态添加元素的逻辑 // (eg: this.dynamicElement = document.createElement('div');
this.cdRef.detectChanges(); }
通过手动触发更改检测,你就可以避免 Angular Material 在离开元素后更新样式的问题。