Angular 是否有办法解决BrowserModule已加载错误?
我有一个顶级的Angular模块,它惰性地加载另外两个模块。所有模块都需要访问我从node_模块获得的另一个模块。该库模块导入Angular 是否有办法解决BrowserModule已加载错误?,angular,lazy-loading,angular8,Angular,Lazy Loading,Angular8,我有一个顶级的Angular模块,它惰性地加载另外两个模块。所有模块都需要访问我从node_模块获得的另一个模块。该库模块导入BrowserModule和BrowserAnimationsModule,因此我当然会收到错误“error:BrowserModule已经加载”。下面是我的代码: 父应用程序路由.module.ts: import { Routes, RouterModule } from '@angular/router'; const routes: Routes = [ {
BrowserModule
和BrowserAnimationsModule
,因此我当然会收到错误“error:BrowserModule已经加载”。下面是我的代码:
父应用程序路由.module.ts:
import { Routes, RouterModule } from '@angular/router';
const routes: Routes = [
{
path: '',
loadChildren: () =>
import('../../../lazyLoadedModule/src/app/app.module').then(
mod => mod.lazyLoadedModule
)
},
{
path: '',
redirectTo: '',
pathMatch: 'full',
}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule {}
@NgModule({
declarations: [AppComponent],
imports: [
BrowserModule,
BrowserAnimationsModule,
**troubleModule**,
AppRoutingModule,
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule {}
const routes: Routes = [
{ path: '', component: AppComponent },
{
path: '**',
redirectTo: ''
}
];
@NgModule({
declarations: [
AppComponent
],
imports: [
CommonModule,
**troubleModule**,
RouterModule.forChild(routes)
],
providers: [],
bootstrap: [AppComponent]
})
export class lazyLoadedModule{}
父应用程序模块ts:
import { Routes, RouterModule } from '@angular/router';
const routes: Routes = [
{
path: '',
loadChildren: () =>
import('../../../lazyLoadedModule/src/app/app.module').then(
mod => mod.lazyLoadedModule
)
},
{
path: '',
redirectTo: '',
pathMatch: 'full',
}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule {}
@NgModule({
declarations: [AppComponent],
imports: [
BrowserModule,
BrowserAnimationsModule,
**troubleModule**,
AppRoutingModule,
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule {}
const routes: Routes = [
{ path: '', component: AppComponent },
{
path: '**',
redirectTo: ''
}
];
@NgModule({
declarations: [
AppComponent
],
imports: [
CommonModule,
**troubleModule**,
RouterModule.forChild(routes)
],
providers: [],
bootstrap: [AppComponent]
})
export class lazyLoadedModule{}
延迟加载的app.module.ts:
import { Routes, RouterModule } from '@angular/router';
const routes: Routes = [
{
path: '',
loadChildren: () =>
import('../../../lazyLoadedModule/src/app/app.module').then(
mod => mod.lazyLoadedModule
)
},
{
path: '',
redirectTo: '',
pathMatch: 'full',
}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule {}
@NgModule({
declarations: [AppComponent],
imports: [
BrowserModule,
BrowserAnimationsModule,
**troubleModule**,
AppRoutingModule,
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule {}
const routes: Routes = [
{ path: '', component: AppComponent },
{
path: '**',
redirectTo: ''
}
];
@NgModule({
declarations: [
AppComponent
],
imports: [
CommonModule,
**troubleModule**,
RouterModule.forChild(routes)
],
providers: [],
bootstrap: [AppComponent]
})
export class lazyLoadedModule{}
我试着把它放在一个sharedModule中,我在这两个地方都导入了它,但都不起作用。有什么办法可以解决这个问题吗?
感谢您的帮助。请参阅文档:,在除main.module之外的其他模块中用CommonModule替换BrowserModule。我正在导入CommonModule,而不是BrowserModule,用于我的延迟加载模块。问题是我从包中得到的模块正在导入BrowserModule和BrowserAnimationsModule。我的应用程序的所有模块中都需要此“包模块”: