首页 > 解决方案 > 当页面在 Angular 10 中完全加载时调用组件函数

问题描述

我有一个 Angular 10 应用程序,它首先启动一个登录页面。但在显示登录字段之前,我需要检查 Web 服务的存在并检查应用程序当前是否处于维护状态。所以我需要在我的login.component.ts文件中调用一个函数,但是当页面的所有内容将被加载和显示时。

我试过这个:

 this.router.events.subscribe((e) => {
   if (e instanceof NavigationEnd) {
      this.NetworkTest();
   }
 });

但是在我的构造函数中,它的调用有点太早了,并且我的主要背景图像没有显示。对我有什么建议吗?

我也尝试了 ngAfterViewInit,结果相同。

谢谢

UDATE1:在 NavigationEnd 事件中绑定不起作用是正常的吗?属性在背景中发生变化,但视图未更新。

标签: angularangular2-routingangular2-directives

解决方案


ngAfterViewInit似乎是满足您需求的好地方。
要确保显示背景,您可以按照操作。

为了处理显示登录表单,我建议创建一个标志。仅当 Web 服务正在运行时才将其设置为 true。
TS:let isWebServiceRunning = false;
HTML:<div *ngIf="isWebServiceRunning">Login Form</div>


推荐阅读