قيم الإعدادات
جزء من قسم TypeScript وNestJS في رحلة Node.js على Coddy. الدرس 9 من 17.
حجم الصفحة إعداد، لذا ينبغي أن يأتي من البيئة بدلًا من كتابته داخل وحدة التحكم. يسجّل موفّر القيمة أي قيمة تحت اسم يُسمّى رمزًا.
providers: [
{ provide: 'CURRENCY', useValue: process.env.CURRENCY ?? 'EUR' },
],
constructor(@Inject('CURRENCY') private readonly currency: string) {}السلسلة النصية ليس لها صنف يمكن لـ Nest قراءته من نوع المعامل، لذا يحدّد @Inject('CURRENCY') الرمز. يجب أن يُكتب بالطريقة نفسها في الموضعين: فالخطأ الإملائي يوقف التطبيق مع ظهور الخطأ «تعذّر حل التبعيات». قيم البيئة سلاسل نصية دائمًا؛ حوّلها باستخدام Number() عندما تحتاج إلى رقم.
التحدي
سهل- سجّل
PAGE_SIZEفيTasksModule:process.env.PAGE_SIZEكرقم، ويكون 10 إذا لم يتم تعيينه. يضبطه هذا الدرس على 2. - يُرجع
GET /tasksالقيم{ items, page, total, pages }؛ ويعرض?page=2الصفحة التالية، ويظلdoneيُستخدم للتصفية. - أرسل
GET /tasks، ثمGET /tasks?page=2، ثمGET /tasks?page=9.
جرّب بنفسك
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 {}