РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗jsnsPmCfSeS 111 of 168 menu
◀ ▶

Несколько настроек в Nest

Пусть страница знает только заголовок сайта, а размер выдачи списка снова зашит в код. Два параметра окружения удобнее читать одним сервисом и собирать ответ из обеих строк.

Сервис настроек вызывают несколько раз с разными ключами. Каждый вызов метода get возвращает одну строку из файла окружения. Метод страницы склеивает результаты и отдаёт клиенту одну строку.

Покажем на примере постов:

BLOG_TITLE=Blog PAGE_SIZE=20

Контроллер прочитает оба ключа и вернёт их слитно:

import { Controller, Get } from '@nestjs/common'; import { ConfigService } from '@nestjs/config'; @Controller('posts') export class PostController { constructor(private configService: ConfigService) {} @Get() getPosts(): string { const title = this.configService.get('BLOG_TITLE'); const size = this.configService.get('PAGE_SIZE'); return title + size; } }

Подключим контроллер и модуль конфигурации в корневом модуле:

import { Module } from '@nestjs/common'; import { ConfigModule } from '@nestjs/config'; import { PostController } from './post.controller.js'; @Module({ imports: [ConfigModule.forRoot()], controllers: [PostController], }) export class AppModule {}

Сделайте страницу списка работников в контроллере WorkerController, которая склеивает в ответе название сайта и размер страницы из настроек, и подключите модуль конфигурации с контроллером к корневому модулю.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить