पाठ 8 / 33

Modules

Controllers, services और dependencies को cohesive units में organize करें।

Module define करें

@Module() decorator controllers, services, imports और exports को wire up करता है।

import { Module } from '@nestjs/common';
import { UsersController } from './users.controller';
import { UsersService } from './users.service';

@Module({
  controllers: [UsersController],
  providers: [UsersService],
  exports: [UsersService] // other modules can use this service
})
export class UsersModule {}

Root module (AppModule)

AppModule entry point है; यह सभी feature modules को import करता है।

@Module({
  imports: [UsersModule, PostsModule],
  controllers: [AppController],
  providers: [AppService]
})
export class AppModule {}

Lazy-loaded modules

Dynamic module configuration के लिए forFeature() या async forRootAsync() patterns उपयोग करें (उदा., database connections)।