Size: a a a

NestJS — русскоязычное сообщество

2021 July 02

PL

Pavel Luhin in NestJS — русскоязычное сообщество
ну тайпскрипт можно же притащить
источник

D

Dmitriy in NestJS — русскоязычное сообщество
А писать на js - сомнительное удовольствие. В этом же и одно из преимуществ NestJS - в том, что он на тайпскрипте
источник

D

Dmitriy in NestJS — русскоязычное сообщество
Напрашивается аналогия с болотом, в котором прыгаешь по кочкам)
источник

PL

Pavel Luhin in NestJS — русскоязычное сообщество
так оно так и есть в реале
источник

PL

Pavel Luhin in NestJS — русскоязычное сообщество
нест на тс, но ты бывают библиотеки у которых нет тс типов
источник

D

Dmitriy in NestJS — русскоязычное сообщество
Да, поэтому мне нода и не зашла в целом
источник

PL

Pavel Luhin in NestJS — русскоязычное сообщество
приходится в этом болоте ковыряться
источник

D

Dmitriy in NestJS — русскоязычное сообщество
+
источник

МЗ

Михаил Золотарёв... in NestJS — русскоязычное сообщество
Loopback 4, имхо, даже приятнее неста
источник

K

Kosmos in NestJS — русскоязычное сообщество
Кто-то пользовался nestjs-otel?
источник

Т

Тёмыч in NestJS — русскоязычное сообщество
источник

А

Алексей in NestJS — русскоязычное сообщество
Ребят, если у кого-то есть нормальное объяснение того, как под капотом происходит резолвинг внедряемого провайдера, поделитесь пожалуйста. Выглядит как магия, а оф. документация не дает четкого понимания
источник

А

Алексей in NestJS — русскоязычное сообщество
Грубо говоря, есть пример из доки:
{
   provide: CatsService,
   useClass: CatsService,
}


И волшебным образом внедряется этот провайдер через название поля + тип

constructor(private catsService: CatsService)


Nest резолвит эту зависимость на этапе компилирования ts в js, опираясь на тип CatsService, или в рантайме, опираясь на название поля и значение в поле provide самого провайдера?
источник

PL

Pavel Luhin in NestJS — русскоязычное сообщество
на этапе компиляции он видит декоратор @Injectable и собирает инфу о всех провайдерах которые нужно инжектнуть (тип или токен)
в рантайме он сопоставляет токены с реальными провайдерами и подставляет их

в деталях могу ошибаться, но суть такая
источник

А

Алексей in NestJS — русскоязычное сообщество
Т.е. если в конструкторе я опущу тип, и получится
constructor(private catsService)

То Nest не поймет что сопоставлять с токеном и не сможет зарезолвить эту зависимость?
источник

PL

Pavel Luhin in NestJS — русскоязычное сообщество
тут я могу лишь гадать, сам таким не страдал. но мне кажется - не сможет. по крайней мере, пока не добавишь @Inject декоратор
источник

А

Алексей in NestJS — русскоязычное сообщество
Понял, спасибо
источник

С

Сергей in NestJS — русскоязычное сообщество
Коллеги, подскажите как реализовать следующий кейс по best practices

Клиент на фронте создает какое-то занятие отправляет на бэк

1. Нужно проверить, что пользователь авторизован (я это делаю через гуард авторизации)
2. Нужно проверить, что учитель имеет право создавать занятие на этого ученика
3. Нужно проверить, что у него на запланированный промежуток времени нет никаких других событий в календаре
4. Нужно проверить, что в классе на запланированное время нет никаких занятий

Если хотя бы одно из этих условий не выполняется - выслать нужный код ошибки
источник

DE

Daniel Erased in NestJS — русскоязычное сообщество
О, а я делал сервис расписания в качестве курсовой работы на nestjs)

Не доделал правда. Сложно очень выходит.

У меня была следующая организация:

Ученики группировались в классы
А на классы непосредственно уже прописывались роли.

Чтобы редактировать класс N нужны права на класс N.
Они прописываются в виде Role.

Была таблица Role - name
И затем в контроллере класса проверялось что у user есть role где name = имениКласса который он хочет модифицировать.

3. У нас был модуль schedule, который содержит в себе cells — внутри cell день и порядок;
И он (schedule) вяжется каждому классу.

4. То же что и в пункте 3
источник

С

Сергей in NestJS — русскоязычное сообщество
Я правильно понимаю, что через Role вы навешивали аутентификацию на контроллеры ?
источник