由于在我的angular11 11-应用程序中存在性能问题,我决定选择使用{ngZone: noop}退出ngZone。我仍然使用角度材料组件,但没有zone.js,其中一些将无法正常工作。例如,不会呈现MatTooltip,即使我在鼠标中心手动触发ChangeDetection,工具提示也在页面顶部浮动。
在没有zone.js的情况下,是否有解决办法来使用材料组件?我准备了一个斯塔克布利茨来展示我的问题。按一下按钮,你就会看到头发发黄的行为。
认为这个问题与它创建的overlayRef有关,因此PositionStrategy是使用的。
谢谢你的帮助。
发布于 2022-07-09 20:16:38
我是这个图书馆的作者
您可以安装库并将库的模块添加到AppModule的imports数组中。
在这些材料生效之后:
import { ZonelessModule } from 'az-zoneless'
@NgModule({
declarations: [
...
],
imports: [
...,
ZonelessModule
],
bootstrap: [AppComponent]
})
export class AppModule {
}安装库后,您可以使用azClick事件以获得更好的性能,并消除对事件调用ChangeDetectorRef.detectChanges的需要。
https://stackoverflow.com/questions/66238871
复制相似问题