Fiecare modul, controller sau serviciu din NestJS poate implementa interfețe specifice pentru a asculta evenimentele din ciclul de viață al aplicației:
OnModuleInit: Se execută imediat după ce dependințele modulului curent au fost rezolvate.OnApplicationBootstrap: Se apelează după ce toate modulele din întreaga aplicație au fost inițializate.OnModuleDestroy&BeforeApplicationShutdown: Se declanșează la primirea semnalelor de oprire (SIGTERM, SIGINT) pentru oprirea controlată a tranzacțiilor și închiderea conexiunilor la baze de date.
Exemplu: Serviciu ce ascultă inițializarea și oprirea aplicației
import { Injectable, OnModuleInit, OnModuleDestroy } from '@nestjs/common';
@Injectable()
export class CacheWarmupService implements OnModuleInit, OnModuleDestroy {
async onModuleInit() {
console.log('[Cache] Inițializare modul: Preîncălzire date frecvente în memorie...');
}
async onModuleDestroy() {
console.log('[Cache] Oprire aplicație: Eliberare conexiuni și salvare stare...');
}
}
Întrebări & Exemple de Cod:
Cârlige din Ciclul de Viață (Lifecycle Hooks) în NestJSAi o nelămurire despre utilizarea comenzii
Cârlige din Ciclul de Viață (Lifecycle Hooks) în NestJSsau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.