TypeScript · Senior · Запитання 12 з 75
Для чого утиліта NoInfer<T> (TS 5.4)?
function pick<C extends string>(colors: C[], fallback: NoInfer<C>) {}
pick(['red', 'blue'], 'green');- ✓Правильна відповідь: Не дає виводити
Cз цього аргументу - буде помилка - 2Вимикає виведення типів для всієї функції та її аргументів
- 3Робить параметр
fallbackнеобов'язковим зі значенням за замовчуванням
Пояснення
Без NoInfer TS вивів би C як 'red' | 'blue' | 'green' з обох аргументів, і помилки не було б. NoInfer каже: «бери C з інших місць і лише перевіряй цей аргумент».