Size: a a a

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

2020 August 05

MM

Max Max in NestJS — русскоязычное сообщество
// RxJS v6+
import { interval, of } from 'rxjs';
import { scan, delay, repeat, mergeMap } from 'rxjs/operators';

const fakeRequest = of('response').pipe(delay(2000));

// output:
// ['response'],
// ['response','response'],
// ['response','response','response'],
// etc...

interval(1000)
 .pipe(
   mergeMap(_ => fakeRequest),
   scan < string > ((all, current) => [...all, current], [])
 )
 .subscribe(console.log);
источник

MM

Max Max in NestJS — русскоязычное сообщество
как читать такую конструкцию?
scan < string > ((all, current) => [...all, current], [])
источник

MM

Max Max in NestJS — русскоязычное сообщество
а блин, меня пробелы перед string сбили с толку, это дженерик просто
источник

AK

Alex Kulagin 🏡 in NestJS — русскоязычное сообщество
Max Max
как читать такую конструкцию?
scan < string > ((all, current) => [...all, current], [])
Как reduce у массива
источник

DB

Dilame 🎩 Bowzee ⠀⠀⠀ོ... in NestJS — русскоязычное сообщество
У меня каждый файл юнит-теста содержит одинаковый блок beforeAll(). Можно ли это куда-то вынести?
источник

is

il.ya sald.in in NestJS — русскоязычное сообщество
Да, в jest возможно
источник

is

il.ya sald.in in NestJS — русскоязычное сообщество
Посмотри в доке
источник

ВЕ

Витковский Евгений... in NestJS — русскоязычное сообщество
Всем привет, подскажите пожалуйста, как провалидировать Два параметра? Параметр должен существовать и быть положительным числом, включая 0
источник

ВЕ

Витковский Евгений... in NestJS — русскоязычное сообщество
источник

А

Антон in NestJS — русскоязычное сообщество
можно ли как то в интерсепторе сделать SetMetadata ?
источник

ス。

ステパンヤノ 。... in NestJS — русскоязычное сообщество
ParseIntPipe пробовали ?
@Query('width', ParseIntPipe) width: number
источник

NG

Nick Galko in NestJS — русскоязычное сообщество
ステパンヤノ 。
ParseIntPipe пробовали ?
@Query('width', ParseIntPipe) width: number
ParseInt - для обязательных параметров
источник

NG

Nick Galko in NestJS — русскоязычное сообщество
вопрос, как проводить валидацию для необязательных?
источник

NG

Nick Galko in NestJS — русскоязычное сообщество
мну dto не сильно выручил тогда (до этого юзал экспрессовскую валидацию)
источник

K

Karlson in NestJS — русскоязычное сообщество
Nick Galko
вопрос, как проводить валидацию для необязательных?
Что мешает создать функцию проверки, @UseGuards , оберните в ней все параметры, прокидывайте уже готовый запрос в котроллер
источник

K

Karlson in NestJS — русскоязычное сообщество
    public canActivate(
       context: ExecutionContext,
   ): boolean | Promise<boolean> | Observable<boolean> {
       const req: RequestGeneric<PostbackQueryInterface> | RequestGeneric<PostbackInterface> = context.switchToHttp().getRequest();
       if (this.isValid(req) === false) {
           throw new BadRequestException();
       }
       req.query = this.transform(req as RequestGeneric<PostbackQueryInterface>);
       return true;
   }
типо так (это из своего проекта взял)
источник

K

Karlson in NestJS — русскоязычное сообщество
а то какая то ярая любовь к декораторам ... иногда чрезмерна
источник

NG

Nick Galko in NestJS — русскоязычное сообщество
Karlson
Что мешает создать функцию проверки, @UseGuards , оберните в ней все параметры, прокидывайте уже готовый запрос в котроллер
да так и делал, надеялся, что я может доку где-то не прочитал
источник

NG

Nick Galko in NestJS — русскоязычное сообщество
так бывает
источник
2020 August 06

VG

Vadim Goldenko in NestJS — русскоязычное сообщество
Karlson
    public canActivate(
       context: ExecutionContext,
   ): boolean | Promise<boolean> | Observable<boolean> {
       const req: RequestGeneric<PostbackQueryInterface> | RequestGeneric<PostbackInterface> = context.switchToHttp().getRequest();
       if (this.isValid(req) === false) {
           throw new BadRequestException();
       }
       req.query = this.transform(req as RequestGeneric<PostbackQueryInterface>);
       return true;
   }
типо так (это из своего проекта взял)
Всё-таки гарды нужны для другой цели - для "общей" защиты эндпоинтов и выдаче 403 при ошибке, а валидация должна быть в validation pipe )
источник