Не уверен, почему вы хотите, чтобы он работал в index.html, сделайте это в app.component.
Вы можете создать службу загрузки. Простой способ заключается в следующем:
@Injectable({providedIn: 'root'})
export class LoadingService {
private _loading = true;
get isLoading() {
return this._loading;
}
set isLoading(v: boolean) {
this._loading = v;
}
}
Затем в app.component.ts:
export class AppComponent {
constructor(public loading: LoadingService) {}
}
И app.component.html:
<any-loading-component *ngIf="loading.isLoading"></any-loading-component>
<router-outlet></router-outlet>
Очистительспособ состоит в том, чтобы использовать субъекты / наблюдаемые в сервисе и подписываться на изменения, где вы хотите показать полосу загрузки и отправлять из любой точки, где вы хотите, чтобы она начала загружаться.