Valeurs de configuration
Fait partie de la section TypeScript et NestJS du Journey Node.js de Coddy. Leçon 9 sur 17.
La taille de la page est un paramètre ; elle devrait donc provenir de l’environnement au lieu d’être saisie dans le contrôleur. Un fournisseur de valeur enregistre une valeur sous un nom appelé jeton.
providers: [
{ provide: 'CURRENCY', useValue: process.env.CURRENCY ?? 'EUR' },
],
constructor(@Inject('CURRENCY') private readonly currency: string) {}Une chaîne n’a pas de classe que Nest peut déduire du type du paramètre ; @Inject('CURRENCY') désigne donc le jeton. Il doit être orthographié de la même façon aux deux endroits : une faute de frappe arrête l’application avec l’erreur « can't resolve dependencies ». Les valeurs d’environnement sont toujours des chaînes ; convertissez-les avec Number() lorsque vous avez besoin d’un nombre.
Défi
Facile- Enregistre
PAGE_SIZEdansTasksModule:process.env.PAGE_SIZEsous forme de nombre, avec 10 si la valeur n’est pas définie. Dans cette leçon, sa valeur est définie à 2. GET /tasksrenvoie{ items, page, total, pages };?page=2renvoie la page suivante, etdonecontinue de filtrer les résultats.- Envoie
GET /tasks, puisGET /tasks?page=2, puisGET /tasks?page=9.
Essayez vous-même
import { Module } from '@nestjs/common';
import { ClockService } from './clock.service';
import { TasksController } from './tasks.controller';
import { TasksService } from './tasks.service';
@Module({
controllers: [TasksController],
providers: [TasksService, ClockService],
exports: [TasksService],
})
export class TasksModule {}