nestjs有一个针对相互依赖的方法forwardRef(),但是官方不建议使用。但有时候还是要用,哈哈
1.menu.module.ts
@Module({
imports : [
//互相调用
forwardRef(() => RoleModule),
DepartmentModule
],
//控制器
controllers: [
MenuController
],
providers: [
MenuService,
CacheService
],
exports : [MenuService]
})
export class MenuModule {}
2.role.module.ts
@Module({
imports : [
forwardRef(()=>MenuModule)
],
//控制器
controllers: [
RoleController
],
providers: [
RoleService
],
exports : [RoleService]
})
export class RoleModule {}
然后页面上调用方法为:
//菜单相关
@Inject(forwardRef(()=>MenuService))
private readonly menuService : MenuService;