在Angular中,可以通过创建一个共享模块来实现多个路径使用相同模块的目的。以下是一个示例解决方案:
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { SharedComponent1 } from './shared-component1.component';
import { SharedComponent2 } from './shared-component2.component';
import { SharedService } from './shared.service';
import { SharedModuleRoutingModule } from './shared-routing.module';
@NgModule({
declarations: [
SharedComponent1,
SharedComponent2
],
imports: [
CommonModule,
SharedModuleRoutingModule
],
providers: [
SharedService
],
exports: [
SharedComponent1,
SharedComponent2
]
})
export class SharedModule { }
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { SharedComponent1 } from './shared-component1.component';
import { SharedComponent2 } from './shared-component2.component';
const routes: Routes = [
{ path: 'shared-component1', component: SharedComponent1 },
{ path: 'shared-component2', component: SharedComponent2 }
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class SharedModuleRoutingModule { }
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { OtherComponent } from './other.component';
import { SharedModule } from './shared.module';
@NgModule({
declarations: [
OtherComponent
],
imports: [
CommonModule,
SharedModule
]
})
export class OtherModule { }
现在,可以在多个路径上使用相同的共享模块。例如,可以在浏览器的地址栏中输入/shared-component1或/shared-component2来访问相应的组件。
下一篇:Angular - 多个模块