在我的角度应用程序中,加载微调器遍及整个应用程序。使用NavigationStart和NavigationEnd条件。
但是我希望有一个微调器,只要有人刷新页面(即在加载任何组件之前),它就会出现。这样,通过显示微调框,可以向正在第一次加载该页面的用户表明该应用正在加载。
我在前端使用angular 6,在后端使用Node js。
是否有一种方法可以启用微调器,并在页面加载后将其禁用。
无法将加载程序放入任何组件内,因为此时组件本身尚未呈现。 (您可以想象!)
是否需要将微调器放入index.html中,还是有一种方法可以检查条件以确定组件是否已完全呈现??
因为对于互联网连接速度非常慢的用户,即使在登录页面加载之前,该页面也似乎已经死了。
我已经在登录组件中添加了代码,并希望微调器能够正常工作。
但是在初始化登录组件之前,微调框不会显示。
答案 0 :(得分:1)
在app-root组件的 index.html 中,我写了“正在加载...”,如下所示。
<body>
<app-root>
Loadingg.......
</app-root>
</body>
无论何时渲染应用及其子组件,此加载... 都会自动被角度覆盖。我假设所有组件都将仅呈现。 (如果要向任何单个组件添加 Loading .. ,则可以像下面的代码一样编写。)
<app-your-wish-component>
Loadingg....
<app-your-wish-component> // Until and less this component is not rendered **Loading...** will be displayed after that component loads **Loading...** will automatically gone.
答案 1 :(得分:0)
您应该开始使用Angular Lifecycle Hooks。 https://angular.io/guide/lifecycle-hooks
关于刷新页面,在大多数情况下,您最好的朋友将是ngOnInit()
答案 2 :(得分:0)
我认为最好的方法是将微调框添加为index.html中的“固定/静态”内容,因此这是您网站上第一个立即加载的内容。