Ciao, Nest
Fa parte della sezione TypeScript e NestJS del percorso Node.js di Coddy. Lezione 1 di 17.
In Express ogni route è una funzione che registri manualmente. NestJS assegna a ogni parte di un’API la propria classe, e i decoratori indicano a Nest cosa fa ciascuna classe.
@Controller('books')
export class BooksController {
@Get()
findAll() {
return [{ title: 'Dune' }];
}
}Un controller gestisce le richieste per un percorso. @Controller('books') e @Get() sono decoratori: etichette che Nest legge quando l’app si avvia. Insieme associano findAll a GET /books, e Nest invia in formato JSON ciò che il metodo restituisce, con stato 200. Un metodo senza decoratore non viene mai chiamato.
Un module elenca le classi che appartengono allo stesso gruppo. src/main.ts chiama NestFactory.create(AppModule); AppModule importa TasksModule, che elenca TasksController. Su un laptop lo avvieresti con npm run start; qui lo fa Run.
Sfida
Facile- Aggiungi un metodo a
TasksControllerche risponda aGET /taskscon l’arraytasks. - Premi Esegui e invia
GET /tasks, poiGET /taskper vedere cosa restituisce un percorso senza una route.
Provalo tu
import { Controller } from '@nestjs/common';
interface Task {
id: number;
title: string;
done: boolean;
}
@Controller('tasks')
export class TasksController {
private tasks: Task[] = [
{ id: 1, title: 'Write the README', done: true },
{ id: 2, title: 'Fix the login bug', done: false },
{ id: 3, title: 'Plan the sprint', done: false },
];
// Aggiungi qui un metodo che risponda a GET /tasks con la lista.
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di TypeScript e NestJS
1Fondamenti di Nest
Ciao, NestParametri di route