93219: Support Router in InitService

For Router to work properly, APP_BASE_HREF must be resolved _before_ the APP_INITIALIZER factory is called (otherwise Angular will attempt to initialize APP_BASE_HREF too soon)
To fix this we add a pre-initialization hook to APP_CONFIG so BrowserInitService can resolve it before APP_INITIALIZER
This commit is contained in:
Yura Bondarenko
2022-07-19 17:58:19 +02:00
parent 39c2aa85ec
commit 372cddfd5e
8 changed files with 164 additions and 64 deletions

View File

@@ -27,8 +27,8 @@ import { LocaleService } from '../../app/core/locale/locale.service';
import { GoogleAnalyticsService } from '../../app/statistics/google-analytics.service';
import { AuthRequestService } from '../../app/core/auth/auth-request.service';
import { BrowserAuthRequestService } from '../../app/core/auth/browser-auth-request.service';
import { InitService } from 'src/app/init.service';
import { BrowserInitService } from './browser-init.service';
import { InitService } from '../../app/init.service';
export const REQ_KEY = makeStateKey<string>('req');
@@ -63,10 +63,7 @@ export function getRequest(transferState: TransferState): any {
AppModule
],
providers: [
{
provide: InitService,
useClass: BrowserInitService,
},
...BrowserInitService.providers(),
{
provide: REQUEST,
useFactory: getRequest,