我们可以为所有 Angular 组件的 ngAfterViewInit 方法实现逻辑吗?

Can we implement logic for all the Angular component ngAfterViewInit method?

总而言之,我正在寻找一种通用方法来为大型 Web 应用程序中的所有组件实现 ngAfterViewInit 方法。

原因是我们需要跟踪每个页面的加载时间,所以为了做到这一点,我需要将检查解决方案放入 ngAfterViewInit 方法中以检查组件。

问题是组件太多,页面太多,如果我使用抽象class或者直接将逻辑放入方法中,我必须接触所有组件并逐一更新,这一点都不通用。

所以我想知道是否有一些通用的解决方案可以在一个地方添加逻辑并被所有组件自动调用。

可能不是您想要听到的答案,但没有办法定义该行为或从模块级别利用您的所有组件。肯定会很整洁!

问题在于,当组件到达生命周期挂钩的那个阶段时,AfterViewInit 功能会独立触发;从技术上讲,组件所属的模块不知道何时发生。

如果不扩展由所有组件扩展的基本 class,这是不可能的。我要说的是,如果您在一个 class 中创建所有这些功能并只实现您需要的功能,那么您可以很容易地完成所有这些工作。要做的另一件事是可能会利用服务或警卫并将艰苦的工作减半。您可以在 app_initializer 中初始化您需要的任何内容并观察路由变化?