2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
✈️Erste Schritte mit [NestJS] in einem Artikel
✈️Einführung in [NestJs] Controller in einem Artikel
In der Welt von NestJS ist das Verständnis von „Anbietern“ der Schlüssel zum Aufbau robuster und wartbarer Backend-Dienste. NestJS übernimmt als modernes Framework für Node.js einige Kernkonzepte von Angular, wie etwa Dependency Injection (DI), und wendet sie auf die serverseitige Entwicklung an. Dieser Artikel befasst sich mit dem Provider-Mechanismus in NestJS, analysiert seine Funktionsweise und wie Sie ihn zur Optimierung Ihrer Anwendung verwenden können.
In NestJS ist ein Provider jedes Objekt, das vom DI-Container verwaltet und eingefügt werden kann. Es kann eine Klasse, ein Wert, eine Factory-Funktion oder eine abstrakte Schnittstelle sein. Die Hauptaufgabe von Anbietern besteht darin, Dienste, Werte oder Fabriken bereitzustellen, die von anderen Modulen oder Komponenten gemeinsam genutzt und wiederverwendet werden können.
Ich habe im vorherigen Artikel etwas über den Controller von Nest erfahren. Dieser Artikel stellt einen weiteren wichtigen Wissenspunkt vor: Anbieter können als der Teil des Controllers verstanden werden, der Dienste bereitstellt, und können auch als Dienste bezeichnet werden.
Nest G Service-Neuigkeiten
Dies ist ein einfacher Dienst, der derzeit zwei Funktionen hat: Die eine besteht darin, eine Liste aller Nachrichten zurückzugeben, die andere darin, ein Datenelement zu erstellen
Abhängigkeitsspritze
Der erste Schritt: Einführung des entsprechenden Dienstes und des entsprechenden Schnittstellentyps im Controller
news.controller.ts
import { NewsService } from './news.service';
import { News } from './interfaces/news.interface';
Schritt 2: Injizieren über den Konstruktor (private newsService: NewsService) {}
@Controller('news')
export class NewsController {
constructor(private newsService: NewsService) {}
.....
}
Schritt 3: Verwenden Sie es im entsprechenden Anforderungsdekorator
@Controller('news')
export class NewsController {
constructor(private newsService: NewsService) {}
@Get('/page')
async getNewsPageList(@Query() query: string): Promise<News[]> {
console.log(query);
return this.newsService.getNewsPageList();
}
@Post('/create')
async createNews(@Body() createNewsDto: CreateNewsDto) {
console.log(createNewsDto,'添加参数');
return this.newsService.createNews(createNewsDto);
}
}
Schritt 4: Registrieren Sie sich in app.module
import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import { NewsController } from './news/news.controller';
import { NewsService } from './news/news.service';
@Module({
imports: [],
controllers: [AppController, NewsController],
providers: [AppService,NewsService],
})
export class AppModule {}
Wenn Sie Anbieter in NestJS beherrschen, können Sie modulare und skalierbare Backend-Dienste besser aufbauen. Durch die ordnungsgemäße Verwendung von Anbietern können Sie Abhängigkeiten einfach verwalten und die Lesbarkeit und Wartbarkeit des Codes verbessern. Unabhängig davon, ob Sie eine komplexe Microservice-Architektur oder einen einfachen API-Dienst erstellen, ist der DI-Mechanismus von NestJS ein unverzichtbares Werkzeug für Sie.