Сокращенная форма обобщений, которые могут быть неопределенными - PullRequest
0 голосов
/ 05 марта 2020

Я знаю, что можно сделать что-то подобное в TypeScript

variable: number | undefined;
variable?: number; // shorthand version

Мой вопрос: возможно ли сделать что-то подобное при использовании дженериков, например

observable$ = new Observable<number | undefined>(); // is there a shorthand way to write this?
observable$ = new Observable<number?>(); // not working

1 Ответ

2 голосов
/ 05 марта 2020

Боюсь, это невозможно. Только подумайте, что вы можете сделать generi c для этого типа type Optional<T> = T | undefined или создать псевдоним type OptionalNumber = number | undefined;.

И сделать Observable<Optional<number>> или Observable<OptionalNumber>. Но на мой взгляд Observable<number | undefined> более читабельно.

...