Я работаю над проектом, который требует запуска двух приложений на странице. Что-то вроде:
<body>
<app-main></app-main>
<app-secondary></app-secondary>
</body>
Идея состоит в том, что два приложения имеют свои собственные Injector / Routing / NgZone, одно из приложений будет отображаться одновременно с обновлением стиля display: none/block
.
* 1006. * Я могу добиться этого, загрузив два модуля в
main.ts
. Он отлично работает с изолированным Injector / Routing / NgZone:
platformBrowserDynamic().bootstrapModule(AppModule)
.catch(err => console.error(err));
platformBrowserDynamic().bootstrapModule(AppSecondaryModule)
.catch(err => console.error(err));
Основной модуль:
@NgModule({
declarations: [AppComponent],
imports: [BrowserModule],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule {
}
Вторичный модуль:
@NgModule({
declarations: [AppSecondComponent],
imports: [BrowserModule],
providers: [],
bootstrap: [AppSecondComponent]
})
export class AppSecondaryModule{
}
Но я не видите никакого официального документа о загрузке нескольких модулей, так что у вас, ребята, есть идеи или комментарии по этому поводу? Вызывает ли это какой-либо побочный эффект, и это правильный путь к go?
Кстати, я пробовал provideIn: 'platform'
, который был только что представлен в Angular 9, он прекрасно работает, оба приложения могут использовать эту общую службу.
Спасибо.