КОГДА Я использую пользовательскую функцию ngDoBootstrap
вместо значения по умолчанию bootstrap: [AppComponent]
, например:
@NgModule({
imports: [ BrowserModule, FormsModule, AppRoutingModule ],
declarations: [ AppComponent, HelloComponent ],
exports: [ AppComponent ],
entryComponents: [ AppComponent ],
// bootstrap: [AppComponent],
})
export class AppModule {
constructor(private injector: Injector) {
}
public ngDoBootstrap(): any {
const appElement = createCustomElement(AppComponent, { injector: this.injector });
customElements.define('my-app', appElement);
}
}
ТО Маршрутизация приложения нарушена.
Он игнорирует любые изменения в URL и работает только тогда, когда я нажимаю <a [routerLink]='...'>
. Также начальный маршрут / не загружен.
Это должно быть вызвано пользовательским механизмом bootstrap, потому что когда я раскомментирую bootstrap: [AppComponent]
, все работает нормально.
Полный код доступен здесь: образец stackblitz (должен быть загружен и запущен локально из-за версии машинописи, используемой stackblitz)
Как заставить маршрутизацию работать с самозагрузкой пользовательского модуля приложения?