TypeScript · Senior · Запитання 12 з 75

Для чого утиліта NoInfer<T> (TS 5.4)?

function pick<C extends string>(colors: C[], fallback: NoInfer<C>) {}
pick(['red', 'blue'], 'green');

Пояснення

Без NoInfer TS вивів би C як 'red' | 'blue' | 'green' з обох аргументів, і помилки не було б. NoInfer каже: «бери C з інших місць і лише перевіряй цей аргумент».

Де почитати

Помилка в запитанні

TypeScript · Senior · запитання 12

Перевірте себе

Пройдіть тест TypeScript · Senior: запитання й варіанти перемішуються, а наприкінці - розбір помилок.

Пройти цей тест