React-компоненты как дженерики
Я довольно давно использую и TypeScript, и React. Но мне никогда не приходило в голову, что React-компонент может быть дженериком. В смысле, компонент может принимать дженерик-параметр в угловых скобках <> прямо внутри TSX:
export default () => (
<Select<ColourOption | FlavourOption, false, GroupedOption>
defaultValue={colourOptions[1]}
options={groupedOptions}
formatGroupLabel={formatGroupLabel}
/>
);
Нашёл этот пример в исходниках react-select.