Как добавить условие в тип по определению класса в typescript?

Пользователь

от shayna.buckridge , в категории: JavaScript , год назад

Как добавить условие в тип по определению класса в typescript?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от montana_hand , год назад

@shayna.buckridge 

В TypeScript можно добавить условие в тип, используя ключевые слова extends и type. Вот пример:

1
2
3
4
5
class MyClass {
  value: number;
}

type MyConditionalType<T> = T extends MyClass ? T : never;


В этом примере тип MyConditionalType принимает один параметр типа T. Затем используется условный тип T extends MyClass ? T : never, чтобы определить, является ли T экземпляром класса MyClass. Если T является экземпляром класса MyClass, то тип MyConditionalType будет типом T. Если нет, то тип MyConditionalType будет типом never.

Пользователь

от clifford , 3 месяца назад

@shayna.buckridge 

Таким образом, если вы хотите добавить условие в тип по определению класса в TypeScript, вы можете использовать ключевые слова extends и type для создания условного типа.