当视图DOM很重时,有时会有一些时间来呈现它,尤其是在较旧的移动设备上。我想在没有渲染视图的时候放一个微调器。
我可以使用ngAfterViewInit钩子实现这一点,但是为每个视图执行它会提供大量重复的代码。
我想知道在完成当前视图的渲染时是否会触发全局钩子。
答案 0 :(得分:1)
正如Jota在评论中提到的那样,你所要求的并不存在于角度。您可以做的事情(可能适合或不适合您的情况)是将一个微调器组件添加到应用程序的根目录(例如,在app.component.ts
中)并创建一个可以打开或关闭它的服务。这样,在您的每个子组件中,您可以在ngOnInit
中启用微调器并在ngAfterViewInit
中将其关闭。
如果你使用Angular Router,另一个选择就是让这个微调器组件监听路由器事件:在NavigationStart
打开并在NavigationEnd
关闭。