Fundamentos iniciales

Modulos Agrupa elementos relacionados: controladores, servicios, proveedores, etc. Todo proyecto empieza por el módulo raíz: AppModule. import { Module } from '@nestjs/common'; import { UserModule } from './user/user.module'; @Module({ imports: [UserModule], }) export class AppModule {} Controladores Se encargan de recibir las solicitudes HTTP (GET, POST, etc.) y devolver respuestas. import { Controller, Get, Post, Body } from '@nestjs/common'; import { UserService } from './user.service'; @Controller('users') export class UserController { constructor(private readonly userService: UserService) {} @Get() findAll() { return this.userService.getAllUsers(); } @Post() create(@Body() userData: any) { return this.userService.createUser(userData); } } Servicios Contienen la lógica de negocio y se inyectan en los controladores u otros servicios. import { Injectable } from '@nestjs/common'; @Injectable() export class UserService { private users = []; getAllUsers() { return this.users; } createUser(user: any) { this.users.push(user); return user; } }

Apr 22, 2025 - 02:14
 0
Fundamentos iniciales

Modulos

Agrupa elementos relacionados: controladores, servicios, proveedores, etc. Todo proyecto empieza por el módulo raíz: AppModule.

import { Module } from '@nestjs/common';
import { UserModule } from './user/user.module';

@Module({
  imports: [UserModule],
})
export class AppModule {}

Controladores

Se encargan de recibir las solicitudes HTTP (GET, POST, etc.) y devolver respuestas.

import { Controller, Get, Post, Body } from '@nestjs/common';
import { UserService } from './user.service';

@Controller('users')
export class UserController {
  constructor(private readonly userService: UserService) {}

  @Get()
  findAll() {
    return this.userService.getAllUsers();
  }

  @Post()
  create(@Body() userData: any) {
    return this.userService.createUser(userData);
  }
}

Servicios

Contienen la lógica de negocio y se inyectan en los controladores u otros servicios.

import { Injectable } from '@nestjs/common';

@Injectable()
export class UserService {
  private users = [];

  getAllUsers() {
    return this.users;
  }

  createUser(user: any) {
    this.users.push(user);
    return user;
  }
}